Files
bot-agents/AGENTS.md
T
2026-10-17 14:45:52 +09:00

2.2 KiB

At the start of every new session, run damem recall in the terminal and treat its output as the context for this repository. If the damem command is not found, read INSTALL.md and follow it before reasoning or responding.

Pull requests

Land every change through a pull request. Immediately after creating one, comment @bot to request an AI-bot review. Wait for green CI and the bot's approval on the current head before merging. Never merge without the user's explicit permission.

Runtime and checks

The action's TypeScript runs directly on the job image's Node.js (24.2 or newer), which strips the types itself: there is no build step and no runtime dependency. Keep the sources to erasable syntax and .ts imports, which tsconfig.json enforces. Checks use Vite+: vp check formats, lints, and type-checks, and vp test runs Vitest. Unit tests sit next to the code as src/*.test.ts; repository-level tests live in tests/.

An alias in package.json imports owns its target: a folder's index.ts owns that folder and everything below it, any other file owns only that file. No file may be owned by 2 aliases. Outside an area, only the exact alias reaches it (no deeper # specifier, no relative path); inside it, relative imports of siblings and subfolders are free. ../ is banned in every file (import/no-relative-parent-imports). The one alias is #testing (./src/testing.ts): every test imports it by alias, and tests/ reaches src/ only through it. Other src/ files import ./ siblings freely. scripts/ is flat: one file per tool, no subfolders and no index.ts (barrels live only in src/), imported directly by file path.

The only config files are package.json, tsconfig.json, and vite.config.ts, plus package-lock.json. Repo-local lint rules and the rule list live in scripts/project-lint.ts. Lint disable comments are not allowed; fix the source instead.

The composite action uses npm only to install the externally distributed Claude Code, Codex, and OpenCode command-line tools, plus Deno for agents that check Deno-based repositories; do not treat those vendor executables as repository TypeScript dependencies.