4.2 KiB
(We are in a codex-cli session and i've instructed it to read this file but given it no other instructions)
Meta Rules
- Please keep a development log of your work (In both llm optimized form and human readable form ) (separate files) (in a subdirectory called devlog)
- Please commit frequently and push/tag a release (YYYY-MM-DD-HHMM) (using the tea command) when you feel it's warranted (all work is done on main for now)
- Please create and maintain README.md and a docs/ directory with .md and .md as we go
- Please create and maintain unit tests as we go in a tests/ directory
Ultimate goal of this project
A wrapper bash script around codex-cli allowing the use of "modes" which will be a collection of
- A fixed Global system prompt
- A fixed Mode prompt
- A variable (user defined) project specific prompt
- Codex settings (model/token budget/reasoning level etc)
- MCP configuration
Also:
- A "wizard" to create new modes (by filling out a markdown file intake form)
- A "wizard" to create new projects (by filling out a markdown file intake form)
Approach
Lets "crawl/walk/run" , starting with a simple wrapper script for codex-cli that has (documented) defaults set but also allows (via command line flags/environment variables/config file) over-riding the options
This should be very collaborative. Ask questions (in a markdown file), once they are answered then create a proposal for review/approval, then create a plan for review/approval. Then once everything is approved, implement the code for review and approval.
I want to be able to test the code early/often and be able to provide feedback. I want to be able to edit markdown files inline to provide context/ask questions etc as we go. The chat interface itself should be kept very clean as it's running in the bottom of my vscode instance and I want to use vscode markdown facilities to rapidly read/edit the markdown files. So our primary way of interacting will be via those files.
Commit/push everything in the repo now before we get started on the project.
Addendum (Housekeeping) — 2025-09-17
- Create and use a
collab/
directory for coordination artifacts. - Under
collab/
, create subdirectories:questions/
,proposals/
, andplan/
. - Use consistent filenames:
<step-or-subject>.md
inside each subdirectory. - Move existing files accordingly (e.g.,
collab/questions/00-bootstrap.md
). - Create and maintain an
AGENTS.md
at the repo root with working agreements and conventions. - Continue keeping
docs/devlog/DEVLOG_LLM.md
anddocs/devlog/DEVLOG_HUMAN.md
updated. - After applying this structure, commit and push the changes.
Chat Output Preference
- Keep chat output concise and minimal. The primary collaboration interface is via repository files (collab/, devlog/, docs/). Use chat only for brief status updates or to announce next actions.
Collaboration Sequencing
- Start with questions in
collab/questions/
and keep iterating/adding questions until satisfied or instructed to move on. - Do not create proposals or plans until the questions file has been edited by the user and the user gives explicit approval.
Files Per Round + LLM Copies
- Use multiple files per round rather than growing a single document.
- Naming:
collab/<type>/NN-<subject>.md
(human) andcollab/<type>/NN-<subject>.llm.md
(LLM-optimized). - Start a new
NN
for each major round; keep subject consistent across types.
Token Discipline
- Keep chat output extremely concise; use the filesystem (docs/devlog, collab/) for details.
- Summarize for the model in
.llm.md
companions; keep human-readable detail in the primary.md
. - Do not paste large content into chat; write to files and reference paths.
- Prefer starting new numbered files per round to keep each doc short.
Chat Output Policy
- Default chat line:
Updated <filepath>. Read/edit and let me know.
- Limit chat to five lines or fewer; avoid explanations in chat.
- Never paste diffs or large content in chat; commit to files and reference paths.
- Log detail in
docs/devlog/
and keep the chat terminal clean. - Only announce updates for
collab/questions/
,collab/proposals/
, andcollab/plan/
files. All other updates go to DevLog without chat noise.