Some checks failed
CI / detect-changes (push) Has been cancelled
CI / docs-check (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / build (push) Has been cancelled
CI / integration-tests (push) Has been cancelled
CI / windows-portability (push) Has been cancelled
CI / rtk-portability (linux, blacksmith-4vcpu-ubuntu-2404) (push) Has been cancelled
CI / rtk-portability (macos, macos-15) (push) Has been cancelled
CI / rtk-portability (windows, blacksmith-4vcpu-windows-2025) (push) Has been cancelled
Replaces the fragmented (AGENTS.md + CLAUDE.md + .github/copilot-instructions.md + .sf/STYLE.md + .sf/PRINCIPLES.md + .sf/NON-GOALS.md) surface with a single canonical .agents/ tree per https://github.com/agentsfolder/spec. Structure: .agents/manifest.yaml spec metadata + defaults + project info .agents/prompts/ base.md project-agnostic base prompt project.md SF-specific: purpose-first, DB-first, build pipeline, Ask/Build/YOLO model snippets/{style,principles,non-goals}.md short pointers into .sf/{STYLE,PRINCIPLES, NON-GOALS}.md for composition .agents/modes/{ask,build}.md YAML front matter + human-readable body .agents/policies/{default-safe,yolo}.yaml conservative default + YOLO override .agents/skills/.gitkeep empty per spec — SF's own skills not yet migrated to agentskills.io format .agents/scopes/.gitkeep single-tree, no scopes yet .agents/profiles/.gitkeep no overlays yet .agents/schemas/.gitkeep generated by validators .agents/state/.gitignore excludes state.yaml from VCS per spec Status: spec is pre-1.0 (specVersion 0.1.0 pinned). No agent runtime currently reads .agents/ — this is structural adoption ahead of ecosystem support. Legacy files (AGENTS.md, CLAUDE.md, etc.) kept during the transition; .agents/ is now the canonical surface and they will eventually point here. This is the reference template; centralcloud/infra, operations-memory, oncall-mobile-android to follow. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2 KiB
2 KiB
Project Prompt — singularity-forge
What this is
SF — Singularity Forge — is a purpose-to-software compiler. The
foundational contract is documented in
docs/adr/0000-purpose-to-software-compiler.md.
Every milestone exists to serve a stated purpose; mechanics (paths,
schemas, commit refs) are subordinate to that purpose.
For the longer narrative form see AGENTS.md and
CLAUDE.md. For style decisions see
.sf/STYLE.md. For invariants see
.sf/PRINCIPLES.md. For things we
explicitly will not do see .sf/NON-GOALS.md.
Non-negotiables
- DB-first: all state lives in SQLite via Node's built-in
node:sqlite(DatabaseSync). Never usebetter-sqlite3or any native SQLite addon. Never use file-based fallbacks for state that belongs in the DB (milestone context, sessions, memories, mode state). If a pattern uses files as a proxy for DB state, that's a bug to fix, not a convention to follow. - Two work modes: Ask and Build. Shift+Tab cycles between them. YOLO (Ctrl+Y) is a flag on Build that drops confirmations; it is never a third mode and is not a Shift+Tab stop.
- Build pipeline: source TypeScript files under
src/resources/extensions/sf/compile todist/resources/...vianpm run copy-resources. Files installed at~/.sf/agent/extensions/sf/are not auto-redirected to TS source — edits to.tsonly take effect aftercopy-resources. - Tests: vitest, no pre-compile.
Workflow
/todo triageemptiesTODO.mdand routes items into structured plan artifacts (docs/plans/), backlog rows, and BUILD_PLAN tier lists. Run before starting work if the inbox has content.- New milestones via
sf headless new-milestone --context <spec>— see SF's own TODO.md for the headless-unattended-mode caveat. - Bulk import of a flat roadmap via
sf headless import-backlog <file.md>(this one works headless).