init-workspace
Skill23 starsChanged 50 days agoMITView on GitHub
Adapt the workflow scaffold to a new repository or add only missing substrate blocks to an existing install. Every install, hook, and overwrite needs explicit consent. Triggers: "init-workspace", "set up agentic workflow", "upgrade workflow scaffold".
1 other project uses a version of this.
Adopted by
Most recently taken up by
- jurgendn/agent-skillstheir own version, first seen Sep 17, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- jurgendn/agent-skills★ 10same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository30 other files it gives its agents.
- AGENTS.mdAGENTS.md
- template/AGENTS.mdAGENTS.md
- audit-docsSkill
- audit-prSkill
- batch-schedulerSkill
- discover-repository-stateSkill
- execute-phaseSkill
- fold-findingsSkill
- log-sessionSkill
- orchestration-envelopeSkill
- phase-contractSkill
- pre-execution-reviewSkill
- product-auditSkill
- resolve-repository-stateSkill
- review-a11ySkill
- review-brandSkill
- review-changeSkill
- review-codeSkill
- review-debtSkill
- review-designSkill
- review-implementationSkill
- review-perfSkill
- review-securitySkill
- review-seoSkill
- review-verifySkill
- skill-lintSkill
- triage-issueSkill
- unit-laneSkill
- verification-contractSkill
- workflow-statusSkill
The file
We split this skill into the rules it gives an agent
5 rules. About 0 are common, 2 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 46
Prefer this over a static npx degit gtrabanco/agentic-workflow/template when you want the gate commands, architecture, and doc domains …
- Distinctive: line 108
No named adapter exists for the detected runtime platform: add portability only for that fallback.
- Distinctive: line 113
All resources are one hop from this file.
- Very specific: line 228
Every NEW unit produces one SPEC.md under docs/features/<NN>-<slug>/, cut in the spec-by-reference shape the template ships: Specs …
- Very specific: line 286
After init: discover-repository-state → workflow-status (to see what's startable) → /unit-lane (the lane conductor).
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Init Workspace
Turn an empty or existing repo into one that works with the agentic workflow: copy the generic scaffold, then tailor it to this project instead of leaving raw placeholders.
Turn contract — verify before ending the turn
✓ Required user inputs were answered concretely (not defaulted). Consent for
every install, hook, and overwrite is explicit; a consent gap runs the
three-tier dispatch and stops with the dispatcher's `open-questions@1` block
— against a scratch unit folder when no unit exists yet (§Consent).
✓ The project charter's identity layer was asked and answered before any
substrate byte was copied — never guessed; an unanswered identity question
halts through the same `open-questions@1` flow (§Charter).
✓ The adapted scaffold and repository-state ledger are written (or the merge/abort decision was asked) and remaining placeholders are listed
✓ Nothing was installed, registered (MCP) or overwritten — including the global
Serena config — without an explicit yes
✓ Artifact language: explicit user instruction > the project's declared docs language > English. The CONVERSATION language never decides — a Spanish prompt still produces English PRs/issues/commits/SPECs unless one of the first two says otherwise
✓ The closing `→ Next:` block is printed as the ABSOLUTE last outputAbout to end the turn with any box unchecked? The turn is NOT done — complete the missing box first (weak models drop end-of-document duties; this list is first on purpose).
When to use
- Setting up a repo to use these skills and you want the documentation substrate
(
AGENTS.md+docs/map + templates) adapted to the project, not just copied. - Prefer this over a static
npx degit gtrabanco/agentic-workflow/templatewhen you want the gate commands, architecture, and doc domains filled in by interview.
Consent — mandatory, never defaulted
Installing a tool, wiring a hook, or overwriting an existing file each need an
explicit yes; context never supplies one, and an ambiguous repository state
(partially scaffolding) is not a route to guess. A consent gap is an open
question: (0) provenance (search the repo's own docs and record where) →
(1) research (concrete options) → (2) halt: run bun
scripts/needs-input.mjs <unit-dir>, paste the open-questions@1 block verbatim,
stop with the questions carried in it. The dispatcher needs a unit folder, and
consent gaps usually precede any unit — so the run first writes a scratch one
(SPEC.md + decisions.md in a mktemp directory, deleted after the paste)
and runs the dispatcher against that. Grammar and exit codes:
orchestration-envelope's references/TURN_CONTRACT.md §Open questions.
[target-dir] is optional — absent means the current directory, recorded.
Step 0 — Discover the project (always first)
Inspect the target dir ([target-dir], default cwd) before touching anything:
- An existing agent guide (
AGENTS.md, or a legacyCLAUDE.md),docs/,.github/? If so, do not clobber — check first whether it's an agentic-workflow scaffold (marker: an agent guide present and eitherdocs/ROADMAP.md— or the pre-319docs/features/ROADMAP.md— or adocs/workflow/dir). If both markers are present, offer upgrade as the default action, alongside merge / adapt-in-place / abort — see Upgrade mode below. If an agent guide ordocs/exists but the markers are absent (a foreign scaffold), stay in bootstrap and ask merge / adapt in place / abort as before. - Detect the stack from manifests (
package.json,pyproject.toml,go.mod,Cargo.toml,Gemfile, …) to propose gate commands and naming conventions. - Note the git state (is it a repo, what's the default branch, and the remote
URL → forge: github.com → GitHub/
gh, gitlab → GitLab/glab, else ask).
Progressive loading — bootstrap or upgrade, never both
The reference allowlist is exactly the six linked paths below. Never invent or
read another references/ path. Step 0 selects exactly one route:
Hard rule for an existing Claude Code, Cursor, Copilot, or OpenCode
scaffold: LOAD exactly references/UPGRADE.md. A missing committed safety
adapter is upgrade work, not a missing vendor primitive. Do not load bootstrap
or portability unless the runtime platform has no named adapter at all.
- Bare/foreign repository: read bootstrap discovery, complete its interview — the charter round first: the identity layer is blocking, the domain layer is open-with-defaults (§Charter below) — then read bootstrap write. Both the discovery and write routes load SERENA language servers for stack detection.
- Existing agentic-workflow scaffold: read upgrade only. Its additive-only rule is absolute; do not replay bootstrap. The upgrade route loads SERENA language servers for the additive provisioning step.
- Provisioning Engram on a host with no pi package: read Engram provisioning — detect, ask, register or instruct, report. Loaded by the bootstrap write route only (the pi package provisions itself, feature 66).
- No named adapter exists for the detected runtime platform: add portability only for that fallback. Claude Code, Cursor, Copilot, and OpenCode are named supported adapters; a missing adapter file is repaired by upgrade and does not trigger portability.
All resources are one hop from this file. Existing files, hook consent, installation consent, and residual reporting are fixed contracts. Missing template/migration evidence is reported by the selected route, never filled by guessing. An existing OpenCode scaffold with only its safety adapter missing loads exactly upgrade and skips bootstrap plus portability.
Charter — what the project is, asked before the substrate
The consent gates protect bytes; the charter captures what the bytes are for. Before the scaffold is adapted, run the two-layer owner interrogation owned by bootstrap discovery §Charter interview and written per bootstrap write step 4:
- Identity layer — blocking, never guessed (project kind, users,
deployment, license, ceremony-profile seed): an unanswered identity question
is not a default — it halts through the same
open-questions@1flow §Consent uses. - Domain layer — open-with-defaults (tests/gate, dependency, docs, tooling, data/PII, i18n): unanswered items are recorded as dated assumptions, surfaced by the first unit that needs them, never re-asked, never silent defaults.
- Content rule + landing: decisions, policies and commands — never
derivable-from-code description — in the agent guide's
## Project chartersection plus the registered criteria catalogue; coverage computed byaudit-docs(check 16), never policed here.
Guardrails
- Seam hooks are consent-gated and opt-in per seam (issue #413). The pi
extension runs project-declared commands at workflow seams only after two
gates, both explicit: init-workspace's consent marker, and the per-seam
"enabled": trueflag in the project's own.pi/hooks.json. On an explicit yes to "enable workflow seam hooks for this project?", write the consent entry into the global store the extension reads —<agentDir>/seam-hooks-consent.json, aprojectsmap keyed by the project's absolute path,{ "consented": true, "consentedAt": <ISO date> }— and create nothing else.<agentDir>is pi's global agent directory:getAgentDir()in the extension,~/.pi/agenton a default install (the directory holdingpi-agentic-workflow.json;~/.claudeis not it). Never write or edit.pi/hooks.json(the developer's declarations, not this skill's), never add the consent entry without the project's absolute path, and a no writes nothing. The dispatcher's own contract — config form, seam vocabulary, refusal grammar — is owned by@gtrabanco/pi-agentic-workflow's README; this skill never restates it. - The session-log fragment carrier is opt-in, off by default (issue #405).
The template ships the documentation (
template/.agentic-workflow/journal.md) and the CI example (*.yml.example) — never the carrier directory itself, so a wholesale scaffold copy opts nobody in. Offer it as one consented question (bootstrap or upgrade): a yes creates.agentic-workflow/journal/and installs one merge wiring; a no writes nothing — no directory, no workflow, no config — and the project keeps today's direct-append journal. The naming grammar has one owner (journal-fragment-grammar@1in@gtrabanco/agentic-workflow's README); this skill never restates it. - The docs-site format is a declared choice. The
Docs siteblock'sformatslot (markdown/md,mdx/starlight/docusaurus,html,latex/tex) decides whatbun scripts/docs-generate.mjsrenders, so a new project is asked for it and an existing one is offered it additively, with consent, in upgrade mode. Declining writes nothing; no format means markdown with the degradation reported, never a silent default. - Never overwrite an existing agent guide (
AGENTS.md, or a legacyCLAUDE.md) ordocs/without explicit consent. - One guide, one name.
AGENTS.mdis the guide; a legacyCLAUDE.mdis retired only in upgrade mode, only with an explicit yes, and only after any content unique to it is folded intoAGENTS.mdfirst. A user whose Claude Code release predatesAGENTS.mdsupport may keep it — that choice is reported as a residual, never treated as drift to repair. - Additive-only, never clobber (upgrade mode). Upgrade mode only adds
blocks the project lacks and fills raw placeholders — it never rewrites or
deletes a block the project already tailored, even if the current template
changed that block too. A genuine re-tailor is a separate, explicitly
requested bootstrap adapt-in-place run, never something upgrade mode does
on its own. The urgency label seeding is additive-only the same way:
create a missing
urgent/fix-nextlabel, never touch one that already exists (name, color, or description a project already customized). - Serena convention — tool and config, one consent question.
.serena/project.ymlis committed;project.local.ymlandcachestay local. Never write.serena/config, install the tool, register an MCP server or touch the globalserena_config.yml(trusted_project_path_patterns) without an explicit yes — SERENA owns the single question and the fixed provisioning report. LSP never verifies documents — false positives happen when a file type's server is not listed (markdown/yaml/json are never auto-detected), a listed server that fails to start must be removed (one failure disables every server in the project), and LSP evidence stays TypeScript/JavaScript-only. Document verification is a script's job. - Engram provisioning is ask-first, never assumed (feature 66). Detect the
engrambinary, ask before writing any host MCP config, write the absolute path with the exactmcp --tools=agentargv, and report exactly what was written. An existingengramdeclaration is never overwritten, and an absent binary is a recorded residual — the documented install route ispi install npm:gentle-engram@latest, never the CLI's own setup subcommand, which keeps serving whatever version ran it until it is re-run. - Retrieval index scaffold and git hooks are consent-gated (AC22). The
index surface — the committed
.agentic-workflow/index.jsonconfig plus the three freshness hooks (post-merge,post-checkout,post-rewrite, allindex-sync.shinstalled into.git/hooks/) — is installed only after an explicit yes to the question "install the doc retrieval index scaffold and its git hooks?". Without consent: install nothing, record it as a residual (the entry point still runs and builds its index on first query — the hooks are only a freshness fast path), and never write.git/hooks/or the config on a later visit without a fresh yes. The hooks are best-effort by contract (doc --sync --quiet, always exit 0 — a fast path never breaks git). - Never redefine the urgency label vocabulary here.
skills/triage-issue /SKILL.mdis the sole owner of theurgent/fix-nextnames, colors, and apply rules — this skill only seeds those two labels into the repo; it never invents a third label or changes what the two mean. - Docs-only scaffolding; no app code, no dependencies installed unprompted.
- Architecture-agnostic: record the project's pattern, don't impose one.
- Honest placeholders over invented specifics; flag what's left to fill.
- Honor the project's Workflow conventions once present; on an existing repo, don't work on its default branch and never commit/push unless asked.
Unit document conventions (the adaptive lane)
The adaptive lane replaces the fixed pipeline with a single-unit-document model.
Every NEW unit produces one SPEC.md under docs/features/<NN>-<slug>/, cut in
the spec-by-reference shape the template ships: Specs (numbered S#, each
quoting the requester's words verbatim), Impact, Non-goals, Future cost,
Applicable tests, Known pre-existing issues, Tasks (each bullet linked to the
S# it delivers), Findings (OPEN rows only), Log (append-only; L1 is the
request verbatim), Next, References. A unit opened before this shape keeps the
legacy 14-section shape — Objective, Why, User outcome, Acceptance criteria,
Impact, Non-goals, Future cost, Applicable tests, Known pre-existing issues,
Tasks, Evidence, Progress log, Next, References — and is never rewritten to
migrate.
Conventions written into the project's AGENTS.md:
- Triage: the lane conductor (
/unit-lane/workflow-status) returns a deterministic ordered list of steps (research, design, plan, implement, tests, evidence, review, docs, release). - Guards:
scripts/diff-guard.mjsmeasuresgit diff --statat boundaries; overflow → mandatory re-triage. Anti-gaming: "NEVER shrink a diff by deleting comments, blank lines, docs or tests." - Evidence rows: one per AC — what was run, exit/digest, output (≤2 lines), verified-by. Verified, not claimed.
- Progress log: dated entries (
YYYY-MM-DD HH:MM) per step taken. - Commit format:
type(scope): description(conventional commits). - Roadmap status:
idea → defined → planned → in-progress → done.
These are written by bootstrap (fresh) and upgrade mode (additive-only for pre-
lane installs). A pre-lane project gets only: the lane conventions section in
AGENTS.md, the unit doc templates under docs/features/_TEMPLATE/ and
docs/fix/_TEMPLATE/, and the docs-map rows for them.
Normalized Repository State
Seed docs/workflow/REPOSITORY_STATE.md from the template. Explain that
discovery freezes evidence before planning and only the resolver updates facts.
Architectural invariants
Offer docs/architecture/ARCHITECTURAL_INVARIANTS.md as an optional project
contract for long-lived architectural rules. Its entries must name a stable ID,
repository evidence, and the authority that can change the rule. Do not infer a
rule from the implementation or a feature SPEC. A project without this document
remains compatible; record n/a: no project invariants declared in later
workflow artifacts rather than creating one silently.
Portability
The scaffold is vendor-neutral; only hook activation differs. When the detected agent has no named adapter, follow portability and keep it as an explicit residual. A supported Claude Code, Cursor, Copilot, or OpenCode adapter does not load this fallback.
Relationship to other skills
npx degit gtrabanco/agentic-workflow/template— the static copy this skill adapts. Use that when you want the raw scaffold and will fill it yourself.docs/workflow/PORTABLE_PROMPT.md— regenerates the skills adapted to a project (behavior). This skill adapts the substrate (docs). Complementary.- After init:
discover-repository-state→workflow-status(to see what's startable) →/unit-lane(the lane conductor); runaudit-docsto confirm the scaffold is coherent.
Done when
- A tailored
AGENTS.md+docs/scaffold +.github/templates exist in the target, unused folders pruned, residual placeholders flagged, the platform's companion review skills are recorded (and offered), and theurgent/fix-nextlabels are seeded (scaffold) or additively reconciled (upgrade), and every accepted safety adapter is active and fixture-tested — or explicitly listed as a residual when its hook API/dependency was unavailable. The adaptive lane conventions (unit document, triage, catalog steps, guards, evidence, commit formats) are written into AGENTS.md. - Serena is provisioned and reported: the one consent question was asked, the project config written (or skipped with its reason), the tool installed and its MCP server registered for the detected platform — or each refused/absent item recorded as a residual with its reason — and the fixed provisioning report states the health check per listed server and the index result. The run completes either way.
The closing
→ Next:block is printed (plus the offer to install the skills):→ Next: /discover-repository-state — freeze repository evidence before planning · raw idea → /workflow-status → /unit-lane (the lane conductor) · next roadmap entry → /unit-lane (tridirection decides catalog steps) · confirm the scaffold is coherent → /audit-docs
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

