objectstack AGENTS.md

A repository instruction file for ObjectStack, including project rules, communication guidance, commands, architecture, and terminology. A monorepo is one repository that contains multiple related projects or packages.

In plain words
What is it for?
It guides work on ObjectStack's build, tests, development servers, frontend, and related sibling repository.
Why use it?
It gives coding agents a shared source of truth, including important naming changes and rules that prevent inconsistent or outdated edits.

Instructions file for CodexOpenCode

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/objectstack-ai/objectstack/agents-md
Clone the repo
git clone --depth 1 https://github.com/objectstack-ai/objectstack

Made for: Codex, OpenCode.

Per session 21,081 This file is loaded in full into every session.
When invoked 21,081 The same file — it is already loaded in full.
Security scan C 2 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.21081 $0.21081
Opus 5 $0.10540 $0.10540
Sonnet 5 $0.04216 $0.04216
Haiku 4.5 $0.02108 $0.02108

Measured 2d ago against content hash be15acbdbbc4, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade C, and why

objectstack AGENTS.md scanned grade C with 2 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Recursive force deletehighDestructive command

rm -rf with a variable or a broad path is one typo away from removing the wrong tree.

`pnpm install --frozen-lockfile && pnpm build && rm -rf packages/runtime/.objectstack`

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

pnpm dev:crm -- --fresh -p 38421 # start; debug via curl
AGENTS.md · 1,163 lines

How it starts

The opening of the file, as written. The whole thing — 1,163 lines — stays where its author put it; the contents beside it link to each section on GitHub.

ObjectStack — AGENTS.md

Primary AI instruction file for this repo — and the human contributors' source of truth. Read natively by Claude Code, GitHub Copilot (coding agent + CLI), and other agents — no separate .github/copilot-instructions.md mirror needed. When any other instruction file in this repo (including .claude/skills/**) conflicts with this one, AGENTS.md wins.

v5.0 breaking rename: projectenvironment everywhere (CLI -e, /api/v1/environments/:id, header X-Environment-Id, OS_ENVIRONMENT_ID, DB column environment_id [control-plane tables; on the metadata tables since deprecated in favour of organization_id, ADR-0006 v4]). No aliases. See ADR-0006. "Project" now only means the npm/monorepo sense.

This file carries principles, binding rules and lookup tables. Lessons from past incidents are distilled in place — failure mode, discipline, boundary — without issue-number citations (maintainer ruling, 2026-08-12: 「处理 issue 时犯的错应该总结成 经验,保留 issue id没有意义」); maintainer rulings keep their date and verbatim quote. Where a hook or CI gate enforces a rule mechanically, the rule is stated once here and the script's own header is the authority on detail.


Communication

语言规则分两件事:和维护者说话用什么语言,与留在 GitHub 上的产物用什么语言。 它们可分,并且就在这里分开。

  • 在 Claude Code 中与维护者对话一律使用中文(对话回复、轮次报告等聊天通道里的内容)。

  • GitHub 产物一律使用英文:issue 与 PR 的标题、正文、评论。维护者裁决 (2026-08-08),原文引用、未翻译:

    issue 和 PR 必须用英文,在 claude code 中和我讨论可以用中文。

  • 引用中文裁决时保持原文、不翻译,即使承载它的 issue/PR 正文通篇是英文——改写引文 就是改写裁决。上面那段引用即是一例:它是维护者的原话,一个字未动。

  • 代码、标识符、提交信息(commit messages)、ADR/文档正文等仓库产物保持现有语言惯例(以英文 为主),不要因本节而改写。

The rules are split per channel because a merged rule was measured to fail (it produced half-Chinese, half-English PR bodies in one day). One rule per channel, no overlap.


Build & Test

pnpm install          # deps
pnpm setup            # first-time: install + build spec
pnpm build            # turbo build (excludes docs)
pnpm test             # turbo test
pnpm typecheck        # turbo typecheck — per-package `tsc --noEmit`; tsup/vitest never type-check
pnpm docs:dev         # docs site

Read the full file on GitHub · 1,163 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 1,163 lines · 21,081 tokens per session scan C be15acbdbbc4

Subscribe to this mod's changes

objectstack AGENTS.md is an instructions file published in the GitHub repository objectstack-ai/objectstack (45 stars, last pushed 2d ago), licensed Apache-2.0. It adds 21,081 tokens to every session, about $0.1054 per session on Opus 5. A static security scan graded it C with 2 findings (recursive force delete, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.