AGENTS.md
packages/AGENTS.mdAGENTS.md
Quality
86/100
Scores the file, not the repository.Length
675 words
5 headings · 1 code blocksRepository
83k
— · pushed 0 days agoLast changed
3 days ago
First indexed 3 days ago.1# packages/AGENTS.md23Follow the root `AGENTS.md` first. This file only records module-level boundaries for `packages/`.45## Package responsibilities67- `packages/agui-adapter`: pure TypeScript adapter between persisted Open Design agent/GenUI/plugin-pipeline events and the AG-UI event protocol. Keep transport and filesystem concerns out; daemon producers and web/CopilotKit consumers share this conversion boundary.8- `packages/contracts`: web/daemon app contract layer. Keep it pure TypeScript; it must not depend on Next.js, Express, Node filesystem/process APIs, browser APIs, SQLite, daemon internals, or the sidecar control-plane protocol.9- `packages/components`: shared React UI primitives and primitive CSS. It may depend on React types/runtime only; keep product workflows and app-specific layout/styling in the apps.10- `packages/diagnostics`: shared diagnostics export primitives for log collection, redaction, manifests, crash-report discovery, and zip packaging used by daemon and desktop.11- `packages/download`: managed-download runtime. Owns resumable and checksum-verified transfers, concurrent-request deduplication, target locking, inspection/removal, copy-and-clear, and pruning; callers supply the download identity and storage base.12- `packages/host`: web/desktop host bridge contract. It models renderer-facing host capabilities and helpers while keeping `window.__od__` access out of app UI code.13- `packages/launcher-proto`: launcher protocol and path/state primitives. Owns channel/version/namespace validation, launcher directory derivation, runtime and cleanup descriptors, target selection, and after-quit argument parsing without owning launcher process orchestration.14- `packages/metatool`: internal metadata helpers for repo-local tool build outputs. Keep reusable hash/check/write mechanics here; each concrete tool owns its own `meta.json`.15- `packages/plugin-runtime`: pure TypeScript plugin manifest/marketplace parsers, source adapters, merge/ref resolution, validation, digesting, and pipeline-fallback selection. Daemon, web, and CI inject I/O rather than adding filesystem access here.16- `packages/registry-protocol`: pure TypeScript plugin-registry backend protocol and schemas. Owns backend list/search/resolve/manifest/doctor plus optional publish/yank interfaces, not concrete network or storage integrations.17- `packages/release`: pure release-domain primitives. Owns release channel names, version parsing/formatting, metadata field derivation, storage prefixes, release namespaces, and app identity data. It must not read/write files, call GitHub/R2, spawn build tools, or own workflow execution.18- `packages/sidecar-proto`: Open Design sidecar business protocol. Owns app/mode/source constants, namespace validation, stamp descriptor/fields/flags, IPC message schema, status shapes, error semantics, and default product path constants.19- `packages/sidecar`: generic sidecar runtime primitives. Includes bootstrap, IPC transport, path/runtime resolution, launch env, and JSON runtime file helpers; it must not hard-code Open Design app keys or IPC business messages.20- `packages/platform`: generic OS process primitives. Includes stamp serialization, command parsing, process matching/search, and well-known user-toolchain bin discovery; it must consume the `sidecar-proto` descriptor and must not hard-code `--od-stamp-*` details. The toolchain helper is the single source of truth shared by the daemon runtime executable resolver (`apps/daemon/src/runtimes/executables.ts`) and the packaged sidecar PATH builder (`apps/packaged/src/sidecars.ts`) so neither layer can drift the search list.2122## Removed directories2324- `packages/shared` has been removed; do not restore it.25- For new shared types, choose the boundary first: web/daemon app DTOs go in `contracts`; sidecar control-plane protocol goes in `sidecar-proto`; generic runtime code goes in `sidecar`; generic OS/process code goes in `platform`.2627## Boundary checklist2829- Package tests live in each package's `tests/` directory, sibling to `src/`; keep `src/` source-only and do not add new `*.test.ts` or `*.test.tsx` files under `src/`.30- Keep cross-runtime DTO and plugin wire-shape validation schemas in `contracts` when callers need the same runtime parser, while keeping app-specific parsing, I/O, and enforcement in the owning app or package.31- Do not let app packages depend directly on sidecar control-plane details.32- Do not hard-code Open Design app/source/mode constants in `sidecar` or `platform`.33- Keep stamp fields limited to five: `app`, `mode`, `namespace`, `ipc`, and `source`.3435## Common package commands3637```bash38pnpm --filter @open-design/agui-adapter typecheck39pnpm --filter @open-design/agui-adapter test40pnpm --filter @open-design/contracts typecheck41pnpm --filter @open-design/diagnostics typecheck42pnpm --filter @open-design/diagnostics test43pnpm --filter @open-design/download typecheck44pnpm --filter @open-design/download test45pnpm --filter @open-design/host typecheck46pnpm --filter @open-design/host test47pnpm --filter @open-design/launcher-proto typecheck48pnpm --filter @open-design/launcher-proto test49pnpm --filter @open-design/metatool typecheck50pnpm --filter @open-design/metatool test51pnpm --filter @open-design/plugin-runtime typecheck52pnpm --filter @open-design/plugin-runtime test53pnpm --filter @open-design/registry-protocol typecheck54pnpm --filter @open-design/registry-protocol test55pnpm --filter @open-design/release typecheck56pnpm --filter @open-design/release test57pnpm --filter @open-design/sidecar-proto typecheck58pnpm --filter @open-design/sidecar-proto test59pnpm --filter @open-design/sidecar typecheck60pnpm --filter @open-design/sidecar test61pnpm --filter @open-design/platform typecheck62pnpm --filter @open-design/platform test63```64
Also in nexu-io/open-design
Diff this repo’s formatsOne repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| nexu-io/open-designplugins/AGENTS.md · 83k | AGENTS.md | stylearchsecuritydo-not | 68/100 | 3 days ago | |
| nexu-io/open-design.github/AGENTS.md · 83k | AGENTS.md | stylearchgitapi+3 | 83/100 | 3 days ago | |
| nexu-io/open-designAGENTS.md · 83k | AGENTS.md | setupteststylearch+9 | 74/100 | 3 days ago | |
| nexu-io/open-designapps/AGENTS.md · 83k | AGENTS.md | testarchmonorepo | 90/100 | 3 days ago | |
| nexu-io/open-designapps/daemon/AGENTS.md · 83k | AGENTS.md | teststylearchtesting-strategy+4 | 86/100 | 3 days ago | |
| nexu-io/open-designapps/daemon/src/critique/AGENTS.md · 83k | AGENTS.md | archtesting-strategymonorepo | 52/100 | 3 days ago | |
| nexu-io/open-designapps/landing-page/AGENTS.md · 83k | AGENTS.md | apideploymentmonorepo | 82/100 | 3 days ago | |
| nexu-io/open-designapps/packaged/AGENTS.md · 83k | AGENTS.md | monorepodo-not | 54/100 | 3 days ago | |
| nexu-io/open-designapps/web/src/components/Theater/AGENTS.md · 83k | AGENTS.md | testarchmonorepo | 72/100 | 3 days ago | |
| nexu-io/open-designdesign-systems/_schema/AGENTS.md · 83k | AGENTS.md | archtesting-strategyapi | 58/100 | 3 days ago | |
| nexu-io/open-designdesign-templates/AGENTS.md · 83k | AGENTS.md | apiui | 43/100 | 3 days ago | |
| nexu-io/open-designe2e/AGENTS.md · 83k | AGENTS.md | teststylearchtesting-strategy+3 | 93/100 | 3 days ago | |
| nexu-io/open-designskills/AGENTS.md · 83k | AGENTS.md | no sections | 39/100 | 3 days ago | |
| nexu-io/open-designtools/AGENTS.md · 83k | AGENTS.md | testing-strategy | 82/100 | 3 days ago | |
| nexu-io/open-designtools/pack/AGENTS.md · 83k | AGENTS.md | styletesting-strategyperformancedeployment+1 | 85/100 | 3 days ago | |
| nexu-io/open-designtools/serve/AGENTS.md · 83k | AGENTS.md | do-not | 32/100 | 3 days ago |
Diff against plugins/AGENTS.md Diff against .github/AGENTS.md Diff against AGENTS.md Diff against apps/AGENTS.md Diff against apps/daemon/AGENTS.md Diff against apps/daemon/src/critique/AGENTS.md Diff against apps/landing-page/AGENTS.md Diff against apps/packaged/AGENTS.md Diff against apps/web/src/components/Theater/AGENTS.md Diff against design-systems/_schema/AGENTS.md Diff against design-templates/AGENTS.md Diff against e2e/AGENTS.md Diff against skills/AGENTS.md Diff against tools/AGENTS.md Diff against tools/pack/AGENTS.md Diff against tools/serve/AGENTS.md
Similar configs
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| aaif-goose/gooseAGENTS.md · 52k | AGENTS.md | setupbuildtestlint-format+6 | 100/100 | 3 days ago | |
| TryGhost/Ghoste2e/AGENTS.md · 55k | AGENTS.md | setupteststylearch+2 | 100/100 | 3 days ago | |
| duckduckgo/content-scope-scriptsspecial-pages/AGENTS.md · 70 | AGENTS.md | buildteststylearch+3 | 100/100 | 3 days ago | |
| n8n-io/n8npackages/@n8n/agents/AGENTS.md · 199k | AGENTS.md | buildteststylearch+3 | 100/100 | 3 days ago | |
| mui/material-uiAGENTS.md · 99k | AGENTS.md | setupbuildtestlint-format+9 | 100/100 | 3 days ago | |
| SkeneTechnologies/skene-cookbookAGENTS.md · 51 | AGENTS.md | setupbuildtestlint-format+7 | 100/100 | 2 days ago | |
| trick77/agents-md-syncAGENTS.md · 2 | AGENTS.md | setupbuildteststyle+5 | 100/100 | 3 days ago | |
| code-yeongyu/oh-my-openagentpackages/web/AGENTS.md · 67k | AGENTS.md | setupbuildtestlint-format+6 | 100/100 | 2 days ago |
