Skip to content

Latest commit

 

History

History
82 lines (58 loc) · 3.6 KB

File metadata and controls

82 lines (58 loc) · 3.6 KB

Forge examples

Copy-paste-ready configuration for the four declarative subsystems plus sample spec manifests. Every file here is executed as a test fixture by examples/tests/ — each one is loaded and validated against the exact same loader the running platform uses, so an example can never silently drift from the schema.

Run the example gate:

uv run pytest examples

What's here

Directory Loaded by What it shows
policies/ forge_policy.load_policy .forge/policy.yaml for 5 repo types
skills/ forge_skill.load_profiles / load_profile Community skill profiles
workflows/ forge_workflow.load_definition Workflow DSL state machines
mcp-connectors/ forge_mcp.load_connection_file MCP connection definitions
specs/ forge_spec.load_manifest Spec manifest.yaml documents

Policies (policies/)

One .forge/policy.yaml per common repo shape. Drop the matching file into your repo at .forge/policy.yaml and adjust repo_id, paths, and reviewers.

Policy is deny-by-default: a deny glob beats an allow glob, write actions are matched against write_rules, deploys against deploy_rules, and anything in restricted_actions is blocked outright.

Skill profiles (skills/)

Skill profiles enforce engineering discipline structurally (test-first, coverage floors, forbidden shortcuts) rather than via prompt text.

  • community-profiles.yaml — a skill_profiles: collection of new profiles (docs-writer, dependency-upgrade, data-migration, api-contract-review).
  • single-profile.yaml — one profile per file (performance-tuning).

These extend the seven built-in profiles shipped in forge_skill; register them with a SkillProfileRegistry to resolve them by name.

Workflows (workflows/)

Declarative state machines parsed and graph-validated at load time.

MCP connectors (mcp-connectors/)

MCP server connection definitions. All keep allow_write: false (security rule

  1. and bind tokens to their server via the RFC 8707 resource parameter.

Spec manifests (specs/)

Machine-readable spec metadata with requirement -> acceptance traceability.

See also

Self-hosting and operations guides live in ../docs/self-hosting/.