b0dd5af22f
- Chat: an AskUserQuestion is its own card (AskCard in MessageList.tsx), not part of the collapsed work line — each question with the option picked or the text typed, "declined" when refused. The transcript route passes the answers from Claude Code's toolUseResult (askAnswers, beside diff). - Chat: the activity panel keeps the user's open/close per session for the tab, and opens by default only once the session has an output. - Workspace home: the sent prompt's draft is dropped even though opening the session unmounts the home. - Terminal: Ctrl+V with text on the clipboard pastes the text; only an empty clipboard still sends ^V. - AGENTS.md / CLAUDE.md: run only the tests a change touches while iterating, the full suite once before committing.
40 lines
2.4 KiB
Markdown
40 lines
2.4 KiB
Markdown
# Codex Project Instructions
|
||
|
||
## Project intent
|
||
- Keep this repository a stable, local-first Claude Code monitoring platform.
|
||
- Maintain correctness across hooks, API, DB, websocket, and UI.
|
||
|
||
## Priorities
|
||
- Correctness over cleverness.
|
||
- Small, scoped, reversible diffs.
|
||
- Preserve existing behavior unless change is requested.
|
||
- Update docs whenever workflow or architecture changes — follow `skills/update-project-docs/` automatically at the end of every change-set (README.md — Vietnamese, the default — and README.en.md; docs/OVERVIEW.md + OVERVIEW.vi.md, ARCHITECTURE, wiki + i18n + cache bump, server/client READMEs, docs/*).
|
||
- Every applicable source file you create or update (`.js/.ts/.tsx/.cjs/.mjs/.py/.sh/.css`) must start with the authorship header: a truthful file overview plus the exact line `@author Nguyễn Ngọc Trí Vĩ <vinnt@smartgift.vn>`. See `skills/file-headers/` and `.claude/rules/file-headers.md`; verify with `bash skills/file-headers/scripts/check-headers.sh`.
|
||
|
||
## Workspace stage
|
||
|
||
AgentHub's `codex` workspaces — lanes in the API and CLI — (like every non-Claude AI tool workspace) carry no pipeline: the dashboard shows no stage for
|
||
them and never infers or advances one, so there is no `agenthub stage` call to
|
||
make while you work here as Codex.
|
||
|
||
## Where to work
|
||
- `server/` for API/routes/data processing.
|
||
- `client/` for React UI behavior.
|
||
- `scripts/` for hook/install/import/cleanup utilities.
|
||
|
||
## Validation expectations
|
||
- Backend changes: run `npm run test:server` when possible.
|
||
- Frontend changes: run `npm run test:client` when possible.
|
||
- Full suites take 5–6 minutes, so while iterating run only what the change touches: `npm run test:server -- server/__tests__/<name>.test.js`, and in `client/` `NODE_ENV=test npx vitest related <changed files> --run` (or `vitest run <test file>`). Run the full suite once before committing, and always when the change touches something every screen uses (`Layout`, `Sidebar`, `StatusBar`, `tailwind.config.js`, global CSS, shared hooks/lib) — the per-screen snapshots catch that.
|
||
- If any check is skipped, report it explicitly.
|
||
|
||
## Safety expectations
|
||
- Keep destructive capabilities behind explicit configuration gates.
|
||
- Never broaden destructive behavior without explicit user request.
|
||
- Treat hook execution path as fail-safe and non-blocking.
|
||
|
||
## Useful commands
|
||
- Setup: `npm run setup`
|
||
- Dev: `npm run dev`
|
||
- Build/start: `npm run build` then `npm start`
|