docs(questions): replace prior answers section with targeted Explainers responding to back-questions
This commit is contained in:
@@ -200,30 +200,19 @@ project.md wouldn't be in this repo (or is that a blank placeholder file (or may
|
||||
6. Format/tooling: choose YAML + `yq` as the single supported format/tool. Approve?
|
||||
Yes
|
||||
|
||||
## Answers/Explainers 2025-17-09-14:46
|
||||
## Explainers 2025-17-09-14:52
|
||||
|
||||
- Name & install:
|
||||
- Use `CodexHelper` as the entrypoint script. No system install; user adds repo script to PATH. Provide optional `bin/install.sh` to symlink into `~/bin`.
|
||||
- Binary discovery:
|
||||
- Resolve with `which codex` then `which codex-cli`; allow `CODEX_BIN` to override. If missing, print guidance; no auto-install.
|
||||
- CLI UX:
|
||||
- Subcommands provide clearer UX and self-documentation; we recommend: `CodexHelper new-project`, `CodexHelper new-mode`, `CodexHelper run`. We can later add flag-only aliases if desired.
|
||||
- Where to run:
|
||||
- Outside this repo: support `new-project` and `run` for user projects. Inside this repo: only `new-mode` (to scaffold a mode via markdown intake).
|
||||
- Project scaffolding contents:
|
||||
- Generate in project: `prompts/project.md` (narrative), optional `prompts/style.md` (coding/style notes), `codex.yaml` (mode/config/MCP placeholders), `codex.sh` (entrypoint wrapper). Create `runs/` on first run and add to `.gitignore`.
|
||||
- Copy mode/system prompts into project under `prompts/_mode/` as read-only copies (cannot enforce, but mark with header comment). `codex.sh` will compose prompts in order.
|
||||
- Prompt composition:
|
||||
- Stack: Global system rules → Mode rules → Project narrative. The optional mode-specific system overlay is an extra system-level rules file for a mode when it needs to extend or tweak the global system rules.
|
||||
- Locations: `prompts/global/system.md` (repo-wide), `modes/<name>/system.md` (optional overlay), `modes/<name>/mode.md` (mode rules), project `prompts/project.md`.
|
||||
- Config/tooling:
|
||||
- Use YAML with `yq`. Precedence: CLI > env > project > mode > global defaults. Pass through sandbox/full-auto flags to codex.
|
||||
- Safety & outputs:
|
||||
- Never overwrite without `--force`. Never run `git push` for user projects. Write runs to `<project>/runs/<timestamp>/...`. Prevent `run` inside this repo except for `new-mode`.
|
||||
- Licensing:
|
||||
- Repo (wrapper, modes, prompts) under AGPLv3. User project artifacts (prompts/code generated) are user-licensed; we will not inject a LICENSE into projects.
|
||||
- OS target:
|
||||
- Ubuntu 22.04/Debian 12+ with bash/zsh. Dependencies: bash, git, yq.
|
||||
- Subcommands vs flags-only (tradeoffs):
|
||||
- Subcommands: clearer discoverability (`CodexHelper new-project|new-mode|run`), better `--help` per action, easier future growth. Flags-only keeps one surface but is harder to parse and extend. Recommend subcommands; flag-only aliases can follow later if wanted.
|
||||
- Project scaffolding examples:
|
||||
- In project: `prompts/project.md` (narrative), optional `prompts/style.md` (coding/style), `codex.yaml` (mode/config/MCP placeholders), `codex.sh` (entrypoint). `runs/` created on first run and ignored by VCS.
|
||||
- `codex.sh` composes prompts: global system → mode rules → project narrative; passes them to `codex` with settings.
|
||||
- Mode/system prompt copies:
|
||||
- Copy global/mode prompts into `prompts/_mode/` in the project as read-only templates (annotated header). Project becomes self-contained; users may edit if desired.
|
||||
- Optional mode-specific system overlay:
|
||||
- For modes that need extra or tweaked system-level rules, include `modes/<name>/system.md` merged before mode rules.
|
||||
- `project.md` here vs user projects:
|
||||
- This repo keeps a template (e.g., `templates/project/<mode>/prompts/project.md`) which bootstrap copies to user projects; users then author real content there.
|
||||
|
||||
7. Precedence final confirm: CLI > env > project > mode > global defaults. Approve?
|
||||
|
||||
|
Reference in New Issue
Block a user