بنقرة واحدة
speckit-workflow
Run the full SDD lifecycle in Zed: specify → plan → tasks → implement (fully autonomous, no gates)
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Run the full SDD lifecycle in Zed: specify → plan → tasks → implement (fully autonomous, no gates)
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | speckit-workflow |
| description | Run the full SDD lifecycle in Zed: specify → plan → tasks → implement (fully autonomous, no gates) |
| compatibility | Requires spec-kit project structure with .specify/ directory |
| metadata | {"author":"Zed","source":"workflow"} |
Run the full Specification-Driven Development lifecycle within Zed without any user interaction. This skill orchestrates the sequential execution of:
/speckit-specify — Create/update the feature specification/speckit-plan — Generate the implementation plan/speckit-tasks — Generate actionable tasks/speckit-implement — Execute the implementationNo review gates. No questions. No stops. If information is missing, search the project codebase for the answer. If truly blocked, make a reasonable default decision and continue.
$ARGUMENTS
Parse the user input for the following:
Required:
Optional (extracted from input if present):
full, cli-only, generator-only, plugins-only, docs-only. Defaults to full.--branch my-feature). If not provided, the speckit-git-feature hook auto-generates one.If no feature description is provided, stop immediately — do not ask the user to clarify. The workflow cannot proceed without a description.
When you encounter any ambiguity or missing information during any step:
grep, find_path, or claude_context_search_code to find existing patterns in the codebase.docs/ and openwiki/ for architecture documentation — these contain high-level system understanding.specs/ directory for similar features to understand conventions.lib/src/ for established patterns.AGENTS.md: Contains project-specific rules and conventions for v5.openwiki/ contains canonical architecture, CLI, domain, presentation, data-layer, testing, integration, and operations documentation. Start with quickstart.md then follow cross-references.specs/ for closely related features — their specs, plans, and tasks.md files document existing patterns..zfa/ memory: The .zfa/ directory contains project memory — plans, runs, decisions, blueprints, manifests, and context.Only if absolutely no information exists in the entire codebase should you make a reasonable default decision and document it. Never formulate a question to the user.
When the feature involves creating or evolving generated architecture code (entities, usecases, repositories, datasources, etc.), follow the canonical v5 workflow:
zfa entity create -n EntityName --field ...
zfa make EntityName --preset=crud --methods=get,getList,create,update,delete --with=vpc --state --di --test
zfa cache adapter EntityName # optional: register Hive adapters if caching needed
zfa build
Hard rules:
zfa make over zfa feature. zfa feature scaffold is only a wrapper over the feature preset.zfa entity create.build_runner directly. Use zfa build.lib/src/domain.zfa. Modify the source templates/generators instead.When implementing features in the Zuraffa framework itself (as opposed to building an app WITH Zuraffa):
lib/src/ — CLI commands, generators, plugins, core types, models, config.zfa make produces for end-users — entities, usecases, repositories, datasources, controllers, views, DI registrations, tests.lib/src/plugins/ — each generates a specific layer (entity, usecase, repository, datasource, controller, etc.).When modifying the framework:
test/ that correspond to the modified layer.zfa build to regenerate any framework-internal generated code.dart analyze to check for compilation errors.flutter test test/path/to/test.dart) targeting the changed area.When the feature affects how generated output looks for end-users, check existing specs (specs/) and the plugin tests in test/plugins/ to understand the expected output format.
Required before any step runs. These checks ensure you understand the architecture and the project is in a healthy state.
First action in every workflow. Classify the task and assess its complexity to determine how much context gathering is needed.
triage skill criteria:
docs/ files, check existing specs for prior art before proceeding.Output the result so downstream steps can adjust:
Triage Result: {Bug Fix | New Feature | Change to Existing Feature} Complexity: {Simple | Complex | Ambiguous}
Depth depends on triage result.
If Simple/Straightforward (regardless of classification):
openwiki/quickstart.md for the high-level picture.If Complex or Ambiguous:
openwiki/quickstart.md, then follow cross-references:
AGENTS.md for v5 contract, hard rules, and conventions.CLI_GUIDE.md for the complete CLI reference.specs/ for similar features — their design decisions, gotchas, and patterns inform your approach.CACHING.md if the feature touches caching or offline sync.docs/v4_vs_v5_comparison.md if the feature involves migration.doc/PLUGIN_API_REFERENCE.md if the feature involves plugin development.doc/MCP_SERVER.md if the feature touches the MCP server.Establish a health baseline before any changes are made.
Check dart analyze for pre-existing errors:
cd /Users/ahmettok/Developer/zuraffa && dart analyze
If pre-existing errors exist, note them in a baseline log so downstream steps can distinguish pre-existing issues from introduced ones.
**Health Baseline**: `dart analyze` shows {N} errors and {M} warnings.
{X} errors are pre-existing (not caused by this workflow).
If no errors, log confirmation and proceed:
**Health Baseline**: ✅ No pre-existing analysis errors — proceeding.
Check zfa build viability (quick check, not a full run):
cd /Users/ahmettok/Developer/zuraffa && dart run build_runner build --delete-conflicting-outputs 2>&1 | tail -20
Note: Only run this if the feature will involve code generation. Otherwise skip.
If the project has pre-existing failures that block the workflow (e.g., dart analyze has errors that make it impossible to validate changes), note them and proceed anyway — partial implementation is better than none.
Before implementation begins, determine which parts of the framework the feature touches:
lib/src/commands/.lib/src/plugins/.lib/src/core/ types affected (Result, Failure, hooks, plan resolution)?lib/src/generator/..zfa.json config or the model layer affected? Check lib/src/models/ and lib/src/config/.lib/src/domain/.lib/src/presentation/.test/ affected?Document the affected modules so implementation steps can be scoped correctly:
Affected Modules: {list of modules} Scope: {scope}
Starting step 1 of 5: Pre-Flight — System context & project health...
Call /speckit-specify with the feature description as arguments.
Starting step 2 of 5: /speckit-specify — Creating specification...
Wait for /speckit-specify to complete before proceeding.
Check project health: After the step completes, run dart analyze (quick check on affected files only).
zfa build).Note: The speckit-specify process includes pre/post hooks (git branching, agent-context update, etc.). Let those hooks run. If a hook presents an optional prompt, skip it silently — this is an autonomous run.
When the spec is done, do NOT present it for review. Do not ask for approval. Immediately proceed to Step 2.
Call /speckit-plan with the feature description as arguments.
Starting step 3 of 5: /speckit-plan — Generating implementation plan...
Wait for /speckit-plan to complete before proceeding.
Check project health: After the step completes, run dart analyze (quick check).
Note: The plan command reads the spec and generates design artifacts. If it encounters options or choices, make the safe/default choice. Look at how existing plans in specs/ are structured if uncertain.
When the plan is done, do NOT present it for review. Immediately proceed to Step 3.
Call /speckit-tasks with the feature description as arguments.
Starting step 4 of 5: /speckit-tasks — Generating task breakdown...
Wait for /speckit-tasks to complete before proceeding.
Call /speckit-implement with the feature description as arguments.
Starting step 5 of 5: /speckit-implement — Executing implementation...
Wait for /speckit-implement to complete.
The implement step reads tasks.md and executes them one by one. If any task has ambiguity:
If the user specified a scope other than full, pass it as context when invoking each step:
cli-only: Only CLI command changes are in scope — skip generator plugin, core type, and presentation changes.generator-only: Only generator pipeline changes are in scope — skip CLI, config, and presentation changes.plugins-only: Only generator plugin changes are in scope — skip CLI, pipeline, and core type changes.docs-only: Only documentation changes are in scope — skip code changes entirely.Include the scope constraint in a note at the start of each /speckit-* invocation:
Scope: {scope} — Adjust implementation accordingly.
When all steps complete successfully, report to the user:
## Workflow Complete
The full SDD lifecycle finished successfully:
| Step | Status |
| ---------- | ------ |
| Pre-Flight | ✅ |
| Specify | ✅ |
| Plan | ✅ |
| Tasks | ✅ |
| Implement | ✅ |
The feature has been fully implemented. See the spec, plan, and tasks for details.
After /speckit-implement completes:
Run zfa build to regenerate any generated code if the feature modified generators, plugins, or entities:
cd /Users/ahmettok/Developer/zuraffa && zfa build
If zfa build fails, check if the failure is due to the changes or pre-existing conditions. Try running dart run build_runner build --delete-conflicting-outputs as fallback.
Run dart analyze to check for compilation errors introduced by the implementation:
cd /Users/ahmettok/Developer/zuraffa && dart analyze
Compare against the baseline from Pre-Flight. Report only new errors introduced by this workflow.
Run focused tests — target the specific area of changes:
# If the feature touches regression-critical paths
flutter test test/regression/docs_command_consistency_test.dart
flutter test test/core/artifact_publisher_test.dart
# If the feature touches a specific plugin
flutter test test/plugins/{plugin_name}_test.dart
# General test run (if time allows, use targeted tests first)
flutter test test/path/to/relevant/test.dart
If diagnostics exist: Make 1-2 focused attempts to fix them. If you can't resolve quickly, leave them and report.
Run /insights: Extract non-obvious key findings from the session and persist them to INSIGHTS.md. This captures gotchas, workarounds, and architecture decisions discovered through trial and error.
Run /docs: Generate or update project documentation in docs/ based on the implementation. Creates architecture diagrams, workflow docs, and component references.
Report results: Tell the user what was implemented, what was tested, any known issues, and what was captured in insights/docs.
Note: /insights and /docs run autonomously — they only write if there's meaningful content to capture. If the session didn't discover any non-obvious insights or architectural changes worth documenting, they'll report back with no changes.