Initialize FABER workflow configuration for a project
Creates FABER workflow configuration for a project with issue-centric automation.
/plugin marketplace add fractary/claude-plugins/plugin install fractary-faber@fractaryclaude-haiku-4-5Initialize FABER workflow configuration for a project.
Creates a minimal FABER configuration that references the default workflow from the plugin.
With workflow inheritance (v2.2+), projects no longer need to copy workflow files - they simply
reference fractary-faber:default and optionally extend it with customizations.
The default FABER workflow (fractary-faber:default) is issue-centric:
Core artifacts: Issue + Branch + Spec + PR
Features:
fractary-faber:default# Generate default FABER configuration
/fractary-faber:init
# Dry-run (show what would be created without creating)
/fractary-faber:init --dry-run
# Force overwrite existing config (creates backup)
/fractary-faber:init --force
Directory structure:
.fractary/plugins/faber/
โโโ config.json # Main configuration (references default workflow)
โโโ gateway.json # Event Gateway configuration
โโโ workflows/ # Project-specific workflow extensions (optional)
โโโ runs/ # Per-run storage (created on first run)
โโโ {org}/
โโโ {project}/
โโโ {uuid}/ # Individual run directories
โโโ state.json
โโโ metadata.json
โโโ events/
Config file (.fractary/plugins/faber/config.json):
{
"$schema": "https://raw.githubusercontent.com/fractary/claude-plugins/main/plugins/faber/config/config.schema.json",
"schema_version": "2.2",
"default_workflow": "fractary-faber:default",
"workflows": [],
"integrations": {
"work_plugin": "fractary-work",
"repo_plugin": "fractary-repo",
"spec_plugin": "fractary-spec",
"logs_plugin": "fractary-logs",
"docs_plugin": "fractary-docs"
},
"logging": {
"use_logs_plugin": true,
"log_level": "info"
},
"safety": {
"protected_paths": [".env", "credentials.json"],
"require_confirm_for": ["delete", "deploy"]
}
}
Key change in v2.2: The workflows array is empty by default. The config references
fractary-faber:default via default_workflow. This eliminates workflow drift - updates to
the default workflow in the plugin automatically apply to all projects.
Gateway config (.fractary/plugins/faber/gateway.json):
{
"version": "1.0",
"backends": {
"local_files": { "enabled": true, "config": { "base_path": ".fractary/plugins/faber/runs" } },
"s3_archive": { "enabled": false, "config": { ... } }
},
"event_retention": { "local_days": 30, "archive_days": 365 }
}
This command should:
--force flag: create backup, proceed with overwrite.fractary/plugins/faber/ directory if needed.fractary/plugins/faber/workflows/ directory (empty, for project extensions).fractary/plugins/faber/runs/ directory (for Run ID system).fractary/plugins/faber/config.json with default_workflow="fractary-faber:default"plugins/faber/gateway/config.template.json โ .fractary/plugins/faber/gateway.jsonImportant: No workflow files are copied. The project uses fractary-faber:default directly
from the installed plugin. This ensures automatic updates and eliminates drift.
After creating the config, optionally customize it for your project:
/fractary-faber:auditfractary-faber:default) works out of the box/fractary-faber:run <work-id> --autonomy dry-runTo extend the default workflow with project-specific steps:
.fractary/plugins/faber/workflows/my-project.json{
"$schema": "../../../.claude/plugins/marketplaces/fractary/plugins/faber/config/workflow.schema.json",
"id": "my-project",
"description": "My project workflow extending FABER defaults",
"extends": "fractary-faber:default",
"skip_steps": [],
"phases": {
"frame": { "enabled": true, "pre_steps": [], "steps": [], "post_steps": [] },
"architect": { "enabled": true, "pre_steps": [], "steps": [], "post_steps": [] },
"build": {
"enabled": true,
"pre_steps": [],
"steps": [
{
"id": "my-lint-check",
"name": "Run Linter",
"description": "Run project-specific linter before implementation",
"prompt": "Run npm run lint and fix any issues"
}
],
"post_steps": []
},
"evaluate": { "enabled": true, "pre_steps": [], "steps": [], "post_steps": [] },
"release": { "enabled": true, "pre_steps": [], "steps": [], "post_steps": [] }
},
"autonomy": { "level": "guarded", "require_approval_for": ["release"] }
}
{
"default_workflow": "my-project",
"workflows": [
{ "id": "my-project", "file": "./workflows/my-project.json" }
]
}
To skip specific default steps:
{
"extends": "fractary-faber:default",
"skip_steps": ["merge-pr", "review-pr-checks"]
}
/fractary-faber:audit - Validate and get customization suggestions/fractary-faber:run - Execute workflow for a work item/fractary-faber:run --resume <run-id> - Resume a failed/paused run/fractary-faber:run --rerun <run-id> - Re-run with different parameters/fractary-faber:status - View current and past run statusplugins/faber/config/faber.example.jsonplugins/faber/docs/CONFIGURATION.mdplugins/faber/docs/RUN-ID-SYSTEM.md