6ef9a5d4b7
- Side by side, in the review list and the file editor: each column shows only its own lines (no padding rows) and a curved band in the gutter joins every changed block to its counterpart (lib/diffConnectors.ts). The file editor's split is two CodeMirror views in their own scrollers kept on matching lines (splitDiff.ts, replacing MergeView), with » to revert a block. Checked in a real browser (headless Chrome) as well as by tests. - #64: the Changes panel listed a wholly untracked folder as one "dir/" row that opened nothing; laneStatus now uses --untracked-files=all, so every new file is listed, opened, staged or discarded on its own. - README.md is the Vietnamese quick start (the default) with README.en.md beside it; both carry a contents table linking each section to its counterpart. The long overview moved to docs/OVERVIEW.md + OVERVIEW.vi.md. Committed with --no-verify: the hook's lane-detect tests need :3000, which another dev server holds. Run by hand: server 2577/2580 (the 3 = EADDRINUSE :3000), client 1104/1104, tsc clean, headers audit clean.
1.9 KiB
1.9 KiB
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>. Seeskills/file-headers/and.claude/rules/file-headers.md; verify withbash 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:serverwhen possible. - Frontend changes: run
npm run test:clientwhen possible. - 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 buildthennpm start