Install
$ agentstack add skill-flatbreadlabs-flatbread-flatbread-major-migration ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Flatbread Major Migration
Use this skill for schema-breaking or developer-contract changes in Flatbread.
Non-Negotiable Framing
Flatbread is a Git-native relational content layer for TypeScript apps. Keep GraphQL as one supported interface, not the whole product identity. Do not reposition Flatbread as a general flat-file database unless writes, constraints, migrations, import/export, and release guarantees are deliberately in scope.
Phase 1: Read-Only Diagnosis
Before editing, inspect:
flatbread.config.*and content model definitions.packages/core/src/generators/schema.ts.packages/core/src/resolvers/arguments.ts.packages/core/src/types.ts.packages/flatbread/src/cli/index.ts.packages/codegen.examples/nextjs, generated GraphQL documents/types, and README examples.
Write a before/after contract covering IDs, refs, filters, root query names, generated TypeScript, config shape, CLI behavior, and example behavior.
Phase 2: Migration Plan
State:
- Packages that must change together.
- Tests, snapshots, generated output, examples, and docs to update.
- Compatibility policy: preserve shipped contracts unless a breaking migration is approved.
- Migration notes users need.
- Rollback path.
Escalate to a human before implementation if any public or generated contract changes.
Phase 3: Implementation
Implement only the approved contract. Keep shared schema and resolver changes aligned with codegen, CLI, examples, and docs. Prefer explicit diagnostics for invalid content models, missing refs, duplicate IDs, unsupported relation shapes, and confusing filter behavior.
Phase 4: Validation
Run or document the closest available checks:
- Core schema/resolver tests or snapshots.
packages/codegengeneration tests.- CLI codegen and server behavior.
examples/nextjsgenerated GraphQL artifacts and build behavior.- README and package README snippets.
If a check cannot run, explain why and record the residual risk.
Release Gate
Treat breaking work as a coordinated monorepo release across flatbread, @flatbread/core, @flatbread/config, @flatbread/codegen, source/transformer packages, and examples.
- For prereleases, use an explicit train such as
1.0.0-alpha.Nor1.0.0-beta.N. - Do not publish breaking prereleases as accidental
latest. - Add migration docs before release approval.
- Confirm rollback and package coordination before publishing.
Default DAG Shape
When this skill is run under the external Oven CLI (@flatbread/oven from https://github.com/FlatbreadLabs/oven), use the topology in flatbread-flow-agentic-workflows.md ("DAG Topology" section). The canonical schema-migration shape — express the DAG via depends_on only; the runner computes ranks via Kahn topo-sort. The shape below is what pnpm exec oven --init-only produces for the starter template (21 tasks across 7 ranks):
rank 1 diag-schema, diag-resolvers, diag-types, diag-codegen, diag-cli,
diag-examples, diag-docs, diag-transformers, diag-source-plugins,
diag-config (planner; read-only)
rank 2 contract-synth (planner; merge)
— Human Checkpoint 1 — schema contract approval —
rank 3 impl-core, impl-docs (executor; depends_on contract-synth)
rank 4 impl-codegen, impl-cli, verify-schema-snap, verify-readme (executor + reviewer; depends_on impl-core / impl-docs)
rank 5 impl-examples, verify-codegen (executor + reviewer; depends_on impl-codegen)
rank 6 verify-cli (reviewer; binds port 5057, depends_on impl-cli + verify-codegen)
rank 7 browser-verify (browser-verifier; binds port 5057, depends_on impl-examples + verify-cli)
Two ranks bind port 5057 (verify-cli, browser-verify); they must remain on distinct ranks. A starter JSON lives at .cursor/dags/flatbread/dag-schema-migration.json. Edit task contents and depends_on, then re-run --init-only to confirm the rank shape didn't regress. See .cursor/dags/README.md for how to install and run Oven against these DAGs.
Safe parallel cuts
Same-rank-safe (do not write the same files):
- All read-only diagnosis tasks.
packages/transformer-*that don't extend shared core types.docs/,README.md, package READMEs, migration notes, changelog.- All validation tasks (each owns a different command).
Must serialize (depends_on chain, never share a rank):
schema.ts→arguments.ts→types.tsinsidepackages/core.packages/core→packages/codegen.packages/codegen→examples/nextjs/**/generated*.- Any task running
flatbread startagainst port5057.
DAG handoff requirements
- Every task prompt must start with
You are acting as . Follow its responsibilities and output schema.AND paste the agent's## Output Schema For DAG Handoffheading list verbatim. The runner only forwardsapiKey/model/cwdtoAgent.create(run_dag.ts:482-486), so.cursor/agents/*system prompts do not propagate. - The PMF framing line is mandatory only for tasks that touch positioning, README, docs, examples, or roadmap. Strip it from pure mechanical tasks (
diag-schema,diag-resolvers,diag-types,impl-codegen,verify-codegen, etc.) — every line costs tokens in every prompt. - For tasks that need to "stay in scope", add a one-liner reminder that
readonly: trueandtools:frontmatter are advisory; reinforceDo not edit files.in the prompt body. - Subagent output must lead with the agent's
## Output Schema For DAG Handoffheadings. Group multi-file references (e.g.packages/core/src/{generators,resolvers,types}.ts) so the executor's## Files changedsurvives the 1800-char window.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: FlatbreadLabs
- Source: FlatbreadLabs/flatbread
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.