Mycelium delivery-bootstrap
Use when starting implementation on a new or unfamiliar codebase. Auto-detects tech stack and sets up development context.
install
source · Clone the upstream repo
git clone https://github.com/haabe/mycelium
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/haabe/mycelium "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/delivery-bootstrap" ~/.claude/skills/haabe-mycelium-delivery-bootstrap && rm -rf "$T"
manifest:
.claude/skills/delivery-bootstrap/SKILL.mdsource content
Delivery Bootstrap Skill
Just-in-Time tech stack detection and setup.
Workflow
- Check product_type from
:diamonds/active.yml- If
is set (fromproduct_type
), use it to determine the delivery profile./interview - If not set, scan for indicators per
Step 1b:detector.md- Curriculum/lesson plans, LMS config ->
content_course - Manuscript/chapters, editorial calendar ->
content_publication - Video scripts, subtitle files, podcast RSS ->
content_media - Prompt templates, model configs, agent definitions ->
ai_tool - Service blueprints, pricing docs ->
service_offering
- Curriculum/lesson plans, LMS config ->
- If non-software product_type detected: skip software tooling detection (Steps 2-3 below), configure product-type-appropriate validation instead, and proceed to Step 4.
- If
1b. Scan project root for technology indicators (software and ai_tool with code):
- Package files: package.json, Cargo.toml, go.mod, requirements.txt, pyproject.toml, Gemfile, pom.xml, build.gradle
- Config files: tsconfig.json, .eslintrc, .prettierrc, rustfmt.toml, .editorconfig
- CI/CD: .github/workflows, .gitlab-ci.yml, Jenkinsfile, Dockerfile
- Framework indicators: next.config.js, nuxt.config.ts, angular.json, etc.
-
Identify stack components (software/ai_tool with code):
- Language(s) and version(s)
- Framework(s)
- Package manager
- Test runner and framework
- Linter and formatter
- Build tool
- CI/CD platform
- Database (if detectable)
- Deployment target
-
Verify tooling works:
- Run build command
- Run test command
- Run lint command
- Note any failures or warnings
-
Document existing patterns:
- Code organization (monorepo, src layout, etc.)
- Naming conventions
- Test patterns
- Error handling patterns
- API patterns
-
Output:
## Stack Profile - Language: [x] v[y] - Framework: [x] - Package manager: [x] - Test: [command] ([framework]) - Lint: [command] - Build: [command] - CI/CD: [platform] ## Commands - Install: [command] - Dev server: [command] - Test: [command] - Build: [command] - Lint: [command] ## Observed Patterns - [list of patterns detected] ## Issues Found - [any broken tooling or warnings]
Rules
- Use the project's established patterns. Don't impose external preferences.
- Be language-agnostic in principles, language-specific in implementation.
- If tooling is broken, flag it rather than silently working around it.
Canvas Output
Create/update
.claude/jit-tooling/active-stack.yml with detected stack configuration.
See .claude/jit-tooling/active-stack.example.yml for the expected format.
Theory Citations
- Forsgren: Accelerate (tooling and automation)
- Smart: Sooner Safer Happier (remove friction)