docs: add quicklisp setup and no-.lisp convention to AGENTS.md
Quicklisp local-projects must be symlinked to memex projects/ to prevent stale copies. Projects contain only .org files — .lisp is generated by tangling.
This commit is contained in:
@@ -12,7 +12,16 @@ When delegating work to subagents, follow this iteration loop:
|
|||||||
error", "The README doesn't explain the --package flag", etc.
|
error", "The README doesn't explain the --package flag", etc.
|
||||||
4. **Iterate** — repeat steps 2-3 until zero issues remain. Do not accept
|
4. **Iterate** — repeat steps 2-3 until zero issues remain. Do not accept
|
||||||
work that still has bugs, documentation gaps, or untested edge cases
|
work that still has bugs, documentation gaps, or untested edge cases
|
||||||
5. **Accept** — only when you cannot find any more issues
|
5. **Accept** — only when you cannot find any more issues. **DONE means:**
|
||||||
|
- All unit tests pass (`(fiveam:run-all-tests)` or equivalent)
|
||||||
|
- Integration tests pass (if applicable)
|
||||||
|
- The project runs and the changed feature works end-to-end (start the runtime,
|
||||||
|
exercise the feature, verify output)
|
||||||
|
- No regressions introduced (pre-existing tests still pass, unchanged features
|
||||||
|
still work)
|
||||||
|
- `check-parens` reports zero issues on modified org files
|
||||||
|
- If the project has a runnable entry point (daemon, TUI, demo), verify it
|
||||||
|
starts and the change is visible
|
||||||
|
|
||||||
Key principles:
|
Key principles:
|
||||||
- The subagent implements, the architect reviews. Do not switch roles.
|
- The subagent implements, the architect reviews. Do not switch roles.
|
||||||
@@ -187,6 +196,24 @@ When sending code to the REPL, use the correct `(in-package ...)` form first.
|
|||||||
| `:cl-tty.slot` | Slot/plugin system |
|
| `:cl-tty.slot` | Slot/plugin system |
|
||||||
| `:cl-tty.markdown` | Markdown rendering |
|
| `:cl-tty.markdown` | Markdown rendering |
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
Before working on CL projects in this monorepo:
|
||||||
|
|
||||||
|
- **Quicklisp local-projects** — ensure `~/quicklisp/local-projects/` is a symlink
|
||||||
|
to `~/memex/projects/`. This eliminates stale copies and ensures cl-tty,
|
||||||
|
passepartout, and other projects are loaded from the same location being edited:
|
||||||
|
```
|
||||||
|
ln -sf ~/memex/projects/cl-tty ~/quicklisp/local-projects/cl-tty
|
||||||
|
```
|
||||||
|
|
||||||
|
- **No .lisp files** — projects contain only `.org` source files. `.lisp` files
|
||||||
|
are generated by tangling and are never edited directly. After cloning or
|
||||||
|
pulling, tangle all org files before loading:
|
||||||
|
```
|
||||||
|
cd projects/passepartout && for f in org/*.org; do projects/tangle-tool/tangle "$f"; done
|
||||||
|
```
|
||||||
|
|
||||||
## Commands
|
## Commands
|
||||||
|
|
||||||
Tangle a single file:
|
Tangle a single file:
|
||||||
|
|||||||
Reference in New Issue
Block a user