aboutsummaryrefslogtreecommitdiffstats
path: root/AGENTS.md
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-10-28 10:07:54 +0100
committerDanilo M. <danix@danix.xyz>2026-10-28 10:07:54 +0100
commit20c61174f8f5863b931775bda85f641003465085 (patch)
treeb68da040ddde7e5c7782a45a55b59cac6140003a /AGENTS.md
downloadgenerat3D-20c61174f8f5863b931775bda85f641003465085.tar.gz
generat3D-20c61174f8f5863b931775bda85f641003465085.zip
Initial commit: generat3D, Daz DSON evaluator for Linux
generat3D evaluates Daz DSON scenes (.duf plus a content library) natively on Linux and writes the .dbz file used by Blender's Diffeomorphic DAZ Importer, removing the need for Daz Studio. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'AGENTS.md')
-rw-r--r--AGENTS.md49
1 files changed, 49 insertions, 0 deletions
diff --git a/AGENTS.md b/AGENTS.md
new file mode 100644
index 0000000..e0a40fe
--- /dev/null
+++ b/AGENTS.md
@@ -0,0 +1,49 @@
+# AGENTS.md
+
+Guidance for AI coding agents working in this repository.
+
+## What this is
+
+`generat3D`: a Python (>=3.11, numpy) CLI that evaluates Daz DSON scenes
+(`.duf` plus a content library) natively on Linux and writes the `.dbz` file
+Blender's Diffeomorphic DAZ Importer reads. It replaces the one step that
+still needs Daz Studio: exporting the morphed figure (mesh and joint centers)
+with Diffeomorphic's `export_to_blender.dsa`. Package `generat3d`, run with
+`python -m generat3d`. Only stdlib plus numpy; do not add dependencies.
+
+The design spec lives in `docs/superpowers/specs/`. Read it before changing
+scope.
+
+## Clean-room rule
+
+Never decompile, disassemble or otherwise reverse-engineer Daz Studio or its
+plugins. Sources allowed: the public DSON spec
+(`docs.daz3d.com/doku.php/public/dson_spec/start`), Diffeomorphic's source
+(GPLv2 or later, compatible), and reference `.dbz` files exported by Daz
+itself. The Daz EULA forbids reverse engineering, and the public spec makes
+it unnecessary.
+
+## Daz content is never committed
+
+Reference `.dbz` files and anything else containing Daz geometry, morph
+deltas or textures live in the gitignored `corpus/` and must never be
+committed: that would redistribute licensed content. Committed fixtures are
+`.duf` scene recipes (URIs and dial values only) and DSON snippets written
+by hand for unit tests.
+
+## Conventions
+
+- Fail loudly: a silently wrong `.dbz` is worse than none, because
+ Diffeomorphic imports it without complaint.
+- Placeholders only in code, docs, tests and commits.
+
+## Testing
+
+No test suite yet. Planned: `python -m unittest` from the repo root. Unit
+tests always run; reference tests compare against `corpus/` and skip when it
+is absent.
+
+## Repo facts
+
+- License: GPLv2 or later (`LICENSE`, header in each source file).
+- Work directly on master.