Universal modules build as header-first cdylibs now, but the docs still
described the old `logos-cpp-generator --from-header --backend qt` path that
emitted `<name>_qt_glue.h` + `<name>_dispatch.cpp` and listed them explicitly
in CMakeLists SOURCES. None of that is current:
- The generator derives a `.lidl` from the impl header, then runs the cdylib
backend → `<name>_cdylib_glue.{h,cpp}` (uniform Qt-plugin glue) +
`<name>_module_impl.cpp` (Qt-free C-ABI export wrapper).
- `mkLogosModule` runs the pipeline automatically — no `preConfigure`.
- `LogosModule.cmake` globs `generated_code/` — modules must NOT list the
generated files in SOURCES (the bug fixed in #12).
Updated across the board:
- guidelines/{codegen.md (rewritten),universal-module,nix-build,metadata-json}
- docs/{spec.md,project.md}, README.md
- skills/{create-universal-module,nix-flake-setup,wrap-external-lib}
- generators/generate-agents-md.ts, mcp-server/tools/build-help.ts
(build-help now flags the "generated_code in SOURCES" mistake directly)
- regenerated llms-full.txt + llms.txt
- refreshed the committed example trees (outputs/logos-*) to match current
`init` output: minimal flake (no preConfigure), CMakeLists without the
generated_code sources, and regenerated AGENTS.md/CLAUDE.md/.claude skills
- re-rendered dev-boost-scaffold-module.md
No source-code/behavior changes — docs + generated context only.
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* docs: emit daemon-client logoscore examples, drop inline (-c) mode
logos-logoscore-cli's inline mode (`logoscore -m <dir> -l <mod> -c
"mod.method(args)" --quit-on-finish`) is being removed. Update everything
dev-boost emits/ships so generated module docs and guidance use the daemon +
client workflow instead:
logoscore -D -m ./result/lib -l <module> & # start a daemon
logoscore call <module> <method> [args...] # call a method (positional)
logoscore stop # stop when done
- Code generators: generate-agents-md.ts, build-help.ts, scaffold.ts now emit
the daemon/start + `call` + `stop` sequence (scaffold derives positional
method + space-separated args instead of a `module.method(args)` string).
- Guidelines (testing.md, universal-module.md) and skills (testing-modules,
create-universal-module, package-lgx, create-full-app) rewritten to the
daemon/client flow; CI guidance is "background daemon, run calls, stop".
- docs/spec.md and templates/full-app/README.md examples updated.
- llms-full.txt re-synced to match (it aggregates the above).
`tsc` still compiles (nix build of the default package passes).
Note: doctests/outputs/* are regenerated end-to-end by the doctest harness
(doctests/run.sh, which scaffolds + builds + executes the commands), so those
snapshots refresh from the updated generators on the next doctest run rather
than being hand-edited here.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* fix: address review — omit empty call args; fix llms type-detection line
- scaffold.ts: no-arg sample methods left `sampleCallArgs` empty, producing a
trailing space / empty arg in the suggested `logoscore call`. Derive a
`sampleCall` that omits the args when empty.
- llms-full.txt: the type-auto-detection line still said "`-c` args" while the
surrounding section documents the `call` client command — now "`call` args".
tsc still compiles (nix build of .#default passes).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* docs: daemon starts clean — drop -l, load modules via load-module
Follow-up to dropping inline mode: logoscore's daemon now starts clean (the
-l/--load-modules autoload flag is removed). Update everything dev-boost
emits/ships to start a clean daemon and load modules with `load-module`:
logoscore -D -m <dir> &
logoscore load-module <module>
logoscore call <module> <method> [args]
logoscore stop
- Generators (generate-agents-md.ts, build-help.ts, scaffold.ts) emit a
`load-module` step instead of `-D … -l <module>`.
- Guidelines/skills/docs/template + llms-full.txt updated (comma-separated
`-l a,b` examples become one `load-module` per module).
tsc compiles (nix build of .#default passes).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>