All .sf/ operational files use UPPERCASE (DECISIONS.md, KNOWLEDGE.md, etc.). Wiki pages now follow the same convention: INDEX.md, ARCHITECTURE.md, WORKFLOWS.md, SUBSYSTEMS.md, GLOSSARY.md. Also updates sf-wiki SKILL.md and system.md prompt references. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2.1 KiB
2.1 KiB
singularity-forge — Index
Generated: 2026-05-11 | Commit: see git rev-parse HEAD | Commands: see WORKFLOWS.md
What this repo is
SF (Singularity Forge) is a standalone autonomous repo operator CLI built on the Pi SDK. It compiles purpose into software via a Purpose-to-Software Compiler model (ADR-0000). One command (sf) runs an LLM-powered agent that plans, implements, tests, commits, and advances through milestones autonomously.
Version: 2.75.3
Package: singularity-forge on npm
Bin: sf
Node: 26.1+ required (.mise.toml, .nvmrc, .node-version pin)
How to run it
npm install -g singularity-forge@latest
sf # interactive TUI
sf headless ... # machine surface (JSON I/O)
Dev from source:
npm install
npm run build # full build (packages + web)
npm run build:core # packages + tsc + resources only
npm run dev # hot reload
npm run copy-resources # rebuild dist/resources/ (extension JS/prompts)
Where to start
| Goal | Start here |
|---|---|
| Understand the product | README.md, VISION.md, ARCHITECTURE.md |
| Understand SF's architecture decisions | docs/adr/ |
| Understand spec-first TDD doctrine | docs/SPEC_FIRST_TDD.md |
| Understand the runtime state model | .sf/PROJECT.md, AGENTS.md |
| Find a subsystem | SUBSYSTEMS.md |
| Build/test commands | WORKFLOWS.md |
| Understand SF autonomous mode | src/resources/extensions/sf/ |
| Understand the Pi SDK packages | packages/ |
Key files
src/loader.ts— CLI entry point (dist/loader.js, binsf)src/headless-context.ts— headless context loading + auto-bootstrapsrc/resources/extensions/sf/— SF autonomous mode extension (compile viacopy-resources)packages/coding-agent/— Pi agent core (tools, models, sessions, settings)packages/ai/— LLM provider adapterspackages/tui/— Terminal UIpackages/daemon/— Background daemon process.sf/sf.db— canonical structured state (SQLite,node:sqlite)