agentleFS
decocmsdecocms/studio/AGENTS.md

studio

AGENTS.md415 starsChanged 3 months agoMITView on GitHub

Studio is an open-source AI platform that connects models and agents to an organization’s data, tools, and workflows. It provides the common infrastructure for building specialized business applications, including storefront solutions. Authentication, MCP connectivity, monitoring, and cost controls belong to the platform so each application can focus on the work its users need to do. Read the guidance for each area your change touches, including when working from the repository root: Use docker compose up --build --watch (bun run dev)…

We split this AGENTS.md into the rules it gives an agent

13 rules. About 1 is common, 8 are distinctive, and 4 are very specific to this project.

  • ≈1

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈8

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Read the guidance for each area your change touches, including when working from the repository root:

    line 7
  2. Very specific:

    Use docker compose up --build --watch (bun run dev) for API + web development.

    line 22
  3. Very specific:

    Before pushing, run bun run verify and include any formatting changes in the commit.

    line 29
  4. Very specific:

    Use @decocms/shared/std for sleep, retry, and backoff across runtimes.

    line 39
  5. Distinctive:

    Keep authorization and data access scoped to the current principal and organization.

    line 45
  6. Very specific:

    Use thread in domain identifiers, storage, and wire contracts.

    line 47
  7. Distinctive:

    Keep comments focused on reasons the code cannot express.

    line 55
  8. Distinctive:

    Keep cache and list keys distinct across tenants and entity shapes.

    line 68
  9. Common:

    Keep real credentials and customer identifiers out of source, fixtures, logs, PRs, and other shared artifacts.

    line 81
  10. Distinctive:

    Never name an organization or customer in commit messages, PR titles or descriptions, review comments, or issues.

    line 85
  11. Distinctive:

    Keep workspace setup, contributor guidance, and implementation plans in this repository's READMEs and engineering documents.

    line 104
  12. Distinctive:

    Keep each instruction in one place.

    line 107
  13. Distinctive:

    Before changing a workspace README, read the README requirements in CONTRIBUTING.md.

    line 112

≈ “Common” is an estimate: at least 1 in 5 of the 36,368 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
AGENTS.md

Studio

Studio is an open-source AI platform that connects models and agents to an organization’s data, tools, and workflows. It provides the common infrastructure for building specialized business applications, including storefront solutions. Authentication, MCP connectivity, monitoring, and cost controls belong to the platform so each application can focus on the work its users need to do.

Before changing code

Read the guidance for each area your change touches, including when working from the repository root:

When changingRead first
API tools, routes, storage, or realtime deliveryapps/api/AGENTS.md
Web UI, localization, or experimentsapps/web/AGENTS.md
Shared contracts, organization flags, or async utilitiespackages/shared/AGENTS.md
Sandbox provisioning, dispatch, caching, or daemonpackages/sandbox/AGENTS.md
Lint rules, lint configuration, or oxlint versionplugins/AGENTS.md
MCP bindingspackages/bindings/README.md
TestsTESTING.md; for E2E, also packages/e2e/README.md

Working locally

Use docker compose up --build --watch (bun run dev) for API + web development. Compose owns PostgreSQL, NATS, object storage, and startup migrations; source syncs into containers while dependencies stay in the image. Do not add managed service downloads or process supervision to the CLI. Frontend-only and local Kubernetes workflows remain available. CONTRIBUTING.md owns setup, worktree isolation, and lifecycle commands; workspace READMEs own builds.

Before pushing, run bun run verify and include any formatting changes in the commit. CI runs the broader checks. Run focused integration or E2E tests when the changed behavior needs them, following TESTING.md.

Investigate failing checks. Before calling a failure pre-existing, reproduce it on the base revision or provide equivalent evidence. Report what passed, what failed, and what was not run.

Shared decisions

  • Use @decocms/shared/std for sleep, retry, and backoff across runtimes. Extend the existing utilities when necessary; the circuit breaker is a separate fault-isolation mechanism.
  • Deliver state changes through the existing push paths. Keep the idle poll as a fallback; shortening it is not a fix for staleness. Read the API instructions before adding a producer or consumer.
  • Keep authorization and data access scoped to the current principal and organization. Feature flags gate product behavior, not access.
  • Use thread in domain identifiers, storage, and wire contracts. User-facing text calls it a "chat". Chat and ChatLayout may name UI composition; their domain state still uses threadId and thread contracts.
  • Validate external input with schemas. Narrow unions with discriminants or property checks instead of casting away uncertainty.
  • Fix underlying type, lint, and unused-code findings. Do not add exclusions or weaken checks just to make a change pass. Remove code and exports your change makes unused.
  • Keep comments focused on reasons the code cannot express. Simplify a workaround before adding a long explanation for it.

Check the behavior you changed

  • Cover relevant empty, invalid, duplicate, and oversized inputs and schema variants. Update tests that assert the old behavior, including contracts shared across test suites.
  • Trace overlapping operations: what happens to an earlier operation's output when another starts? Retry side effects only when idempotent. Claim work at dispatch and coordinate writes that share a destination.
  • Complete the lifecycle of persisted state. Include update and deletion, clean up with the parent, and clear prior terminal state when restarting.
  • Keep cache and list keys distinct across tenants and entity shapes. Bound caches with a TTL and size cap, invalidate bad entries, and publish only after a health signal.
  • Changes on boot, install, or dispatch hot paths need their own default-off flag. Keep rollout separate from deployment; do not reuse an unrelated flag.
  • Include relevant verification and migration notes in PRs. For UI changes, upload screenshots or videos as GitHub attachments and embed their asset URLs in the PR body. Never commit PR-only evidence to the repository, including .github/screenshots/ or .github/pr-assets/. Follow the PR template.

Credentials and shared artifacts

Keep real credentials and customer identifiers out of source, fixtures, logs, PRs, and other shared artifacts. Use synthetic examples. Redact secrets before quoting debugging output.

Never name an organization or customer in commit messages, PR titles or descriptions, review comments, or issues. That covers org names and slugs, site, repository, and branch names, URLs, people, and IDs of their threads, projects, or connections. Describe the case generically, such as "a project with Fast Preview on, on a PR branch", even while debugging a reported issue.

Strip embedded credentials at the persistence boundary and fail closed if a value cannot be parsed safely. Test the written artifact's bytes, not only an intermediate object. Treat pushed credentials as exposed: rotate them first; rewriting Git history does not revoke them.

Documentation

Public product documentation lives in docs-tanstack and is published at Studio documentation. Update product guides and architecture there. When code differs, preserve the specification and identify the implementation gap.

Keep workspace setup, contributor guidance, and implementation plans in this repository's READMEs and engineering documents.

Keep each instruction in one place. Put task-specific guidance near its owner and link to it here with a condition for reading it. Let code, schemas, and tool configuration own discoverable implementation details. When a decision changes, update its existing explanation instead of appending a correction.

Before changing a workspace README, read the README requirements in CONTRIBUTING.md.

Download now (ZIP)

  • Other versions2 projects use a version of this.

    Word for word · 2

    1. decocms/admin★ 409100% same
    2. decocms/mesh★ 409100% same

    Edited · 0

    None found.

    Wrote their own version · 0

    None found.

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.

    Of the AGENTS.md files we read, the 28,693 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.

  • In this repository4 other files it gives its agents.

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.