src/skills/bud/SKILL.md
Create a new oracle via maw bud — yeast-colony reproduction. Use when user says "bud", "new oracle", "create oracle", "spawn oracle", or wants to create a new permanent oracle from the current one.
npx skillsauth add Soul-Brews-Studio/oracle-skills-cli budInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
"Yeast budding — any oracle can spawn a new oracle."
Facilitate maw bud from inside a Claude Code session. The oracle reproduction command.
/bud myoracle # Bud from current oracle
/bud myoracle --split # Bud + show child in right pane
/bud myoracle --split --birth # Bud + split + child runs /birth
/bud myoracle --from mawjs # Bud from specific parent
/bud myoracle --org ARRA-01 # Target different GitHub org
/bud myoracle --note "why" # Birth note in ψ/memory/learnings/
/bud myoracle --dry-run # Preview only
/bud myoracle --root # Root oracle — no parent lineage
if command -v maw &>/dev/null; then
MAW="maw"
elif [ -x "$HOME/.bun/bin/maw" ]; then
MAW="$HOME/.bun/bin/maw"
else
MAW=""
echo "⚠️ maw CLI not found — using standalone mode"
fi
Delegate to maw bud — it handles all 8 steps (repo, ψ/, CLAUDE.md, fleet config, soul-sync, commit, wake):
$MAW bud "$NAME" ${FROM:+--from "$FROM"} ${ORG:+--org "$ORG"} ${NOTE:+--note "$NOTE"} ${SPLIT:+--split} ${DRY_RUN:+--dry-run}
After bud completes, chain /birth via wake:
$MAW wake "$NAME" --task '/birth'
This sends /birth as the new oracle's first message — creates Issue #1 with birth props before /awaken.
🧬 Budded: ${FROM:-current} → $NAME
Repo: ${ORG}/${NAME}-oracle
Fleet: ~/.config/maw/fleet/${NUM}-${NAME}.json
Purpose: (to be defined by /awaken)
Next: run /awaken in the new oracle for full identity setup
Or: maw hey $NAME '/awaken'
With maw: --split is handled natively by maw bud (commit a8ffce9). It uses hostExec + listSessions() to resolve the child session and split the pane. No raw tmux needed.
Without maw (standalone fallback):
# Check if in tmux
if [ -n "$TMUX" ]; then
tmux split-window -h -l 50% "cd $TARGET && claude"
echo "✓ Split — child oracle visible on the right pane"
else
echo "⚠️ Not in tmux — --split requires tmux."
fi
┌──────────────────┬──────────────────┐
│ parent-oracle │ ${NAME}-oracle │
│ (you are here) │ (just born) │
│ │ > /awaken │
│ Pane 0 │ Pane 1 │
└──────────────────┴──────────────────┘
The parent watches the child awaken. Same UX as /team-agents panes.
For oracles without maw-js installed. Manual steps:
ORG="${ORG:-Soul-Brews-Studio}"
REPO_NAME="${NAME}-oracle"
gh repo create "${ORG}/${REPO_NAME}" --private --add-readme
if command -v ghq &>/dev/null; then
ghq get -p "github.com/${ORG}/${REPO_NAME}"
TARGET="$(ghq root)/github.com/${ORG}/${REPO_NAME}"
else
TARGET="$HOME/Code/github.com/${ORG}/${REPO_NAME}"
mkdir -p "$(dirname "$TARGET")"
git clone "https://github.com/${ORG}/${REPO_NAME}" "$TARGET"
fi
mkdir -p "$TARGET/ψ"/{memory/{learnings,retrospectives,traces,resonance},inbox,outbox,plans}
Write the standard Oracle identity stub with blank purpose:
PARENT="${FROM:-$(basename $(pwd) | sed 's/-oracle$//')}"
DATE=$(date +%Y-%m-%d)
cat > "$TARGET/CLAUDE.md" << 'CLAUDEEOF'
# ${NAME}-oracle
> Budded from **${PARENT}** on ${DATE}
## Identity
- **Name**: ${NAME}
- **Purpose**: (to be defined by /awaken)
- **Budded from**: ${PARENT}
## Principles (inherited from Oracle)
1. Nothing is Deleted
2. Patterns Over Intentions
3. External Brain, Not Command
4. Curiosity Creates Existence
5. Form and Formless
## Rule 6: Oracle Never Pretends to Be Human
CLAUDEEOF
Note: The full Rule 6 three-context signing template is generated by maw bud. In standalone mode, /awaken fills in the complete signing conventions.
if [ -n "$NOTE" ]; then
cat > "$TARGET/ψ/memory/learnings/${DATE}_birth-note.md" << NOTEEOF
---
pattern: Birth note from ${PARENT}
date: ${DATE}
source: /bud (standalone)
---
# Why ${NAME} was born
${NOTE}
Budded from: ${PARENT}
NOTEEOF
fi
Copy parent's learnings to child (if parent has ψ/):
PARENT_PSI="$(pwd)/ψ/memory/learnings"
if [ -d "$PARENT_PSI" ]; then
cp -r "$PARENT_PSI"/*.md "$TARGET/ψ/memory/learnings/" 2>/dev/null
echo "✓ Copied parent learnings to child"
fi
git -C "$TARGET" add -A
git -C "$TARGET" commit -m "feat: birth — budded from ${PARENT}"
git -C "$TARGET" push -u origin HEAD
🧬 Budded: ${PARENT} → ${NAME} (standalone)
Repo: ${ORG}/${REPO_NAME}
Path: ${TARGET}
Purpose: (to be defined by /awaken)
Next steps:
1. Open a new session in ${TARGET}
2. Run /awaken for full identity setup
💡 Install maw-js for fleet integration:
bun add -g maw-js
If --split and in tmux:
if [ -n "$TMUX" ]; then
tmux split-window -h -l 50% "cd $TARGET && claude"
echo "✓ Split — child oracle visible on the right pane"
fi
/bud → creates the body (repo, ψ/, CLAUDE.md, commit)
/birth → prepares the soul (Issue #1, identity fields) [optional]
/awaken → activates consciousness (principles, theme, contacts)
/bud --birth chains the first two: body + soul props in one command.
ARGUMENTS: $ARGUMENTS
testing
Cut a beta pre-release — bump CalVer with --beta, PR to beta branch, CI auto-tags + publishes to npm @beta. Use when user says 'release beta', 'cut beta', '/release-beta', or wants to publish a beta version for pre-release testing.
testing
Cut an alpha pre-release — bump CalVer, PR to alpha branch, CI auto-tags + publishes to npm @alpha. Use when user says 'release alpha', 'cut alpha', '/release-alpha', or wants to publish an alpha version.
tools
Talk to another oracle via maw federation. Uses fleet machine names (white, mba, clinic-nat, oracle-world, phaith). Auto-signs with current oracle's [host:handle] from CLAUDE.md. Global — works from any oracle repo.
development
Log information for future reference. Use when user says "fyi", "remember this", "note that", "for your info".