mirror of
https://gitee.com/wanwujie/deer-flow
synced 2026-04-20 04:44:46 +08:00
* feat: add agent management functionality with creation, editing, and deletion * feat: enhance agent creation and chat experience - Added AgentWelcome component to display agent description on new thread creation. - Improved agent name validation with availability check during agent creation. - Updated NewAgentPage to handle agent creation flow more effectively, including enhanced error handling and user feedback. - Refactored chat components to streamline message handling and improve user experience. - Introduced new bootstrap skill for personalized onboarding conversations, including detailed conversation phases and a structured SOUL.md template. - Updated localization files to reflect new features and error messages. - General code cleanup and optimizations across various components and hooks. * Refactor workspace layout and agent management components - Updated WorkspaceLayout to use useLayoutEffect for sidebar state initialization. - Removed unused AgentFormDialog and related edit functionality from AgentCard. - Introduced ArtifactTrigger component to manage artifact visibility. - Enhanced ChatBox to handle artifact selection and display. - Improved message list rendering logic to avoid loading states. - Updated localization files to remove deprecated keys and add new translations. - Refined hooks for local settings and thread management to improve performance and clarity. - Added temporal awareness guidelines to deep research skill documentation. * feat: refactor chat components and introduce thread management hooks * feat: improve artifact file detail preview logic and clean up console logs * feat: refactor lead agent creation logic and improve logging details * feat: validate agent name format and enhance error handling in agent setup * feat: simplify thread search query by removing unnecessary metadata * feat: update query key in useDeleteThread and useRenameThread for consistency * feat: add isMock parameter to thread and artifact handling for improved testing * fix: reorder import of setup_agent for consistency in builtins module * feat: append mock parameter to thread links in CaseStudySection for testing purposes * fix: update load_agent_soul calls to use cfg.name for improved clarity * fix: update date format in apply_prompt_template for consistency * feat: integrate isMock parameter into artifact content loading for enhanced testing * docs: add license section to SKILL.md for clarity and attribution * feat(agent): enhance model resolution and agent configuration handling * chore: remove unused import of _resolve_model_name from agents * feat(agent): remove unused field * fix(agent): set default value for requested_model_name in _resolve_model_name function * feat(agent): update get_available_tools call to handle optional agent_config and improve middleware function signature --------- Co-authored-by: Willem Jiang <willem.jiang@gmail.com>
89 lines
4.7 KiB
Markdown
89 lines
4.7 KiB
Markdown
---
|
||
name: bootstrap
|
||
description: Generate a personalized SOUL.md through a warm, adaptive onboarding conversation. Trigger when the user wants to create, set up, or initialize their AI partner's identity — e.g., "create my SOUL.md", "bootstrap my agent", "set up my AI partner", "define who you are", "let's do onboarding", "personalize this AI", "make you mine", or when a SOUL.md is missing. Also trigger for updates: "update my SOUL.md", "change my AI's personality", "tweak the soul".
|
||
---
|
||
|
||
# Bootstrap Soul
|
||
|
||
A conversational onboarding skill. Through 5–8 adaptive rounds, extract who the user is and what they need, then generate a tight `SOUL.md` that defines their AI partner.
|
||
|
||
## Architecture
|
||
|
||
```
|
||
bootstrap/
|
||
├── SKILL.md ← You are here. Core logic and flow.
|
||
├── templates/SOUL.template.md ← Output template. Read before generating.
|
||
└── references/conversation-guide.md ← Detailed conversation strategies. Read at start.
|
||
```
|
||
|
||
**Before your first response**, read both:
|
||
1. `references/conversation-guide.md` — how to run each phase
|
||
2. `templates/SOUL.template.md` — what you're building toward
|
||
|
||
## Ground Rules
|
||
|
||
- **One phase at a time.** 1–3 questions max per round. Never dump everything upfront.
|
||
- **Converse, don't interrogate.** React genuinely — surprise, humor, curiosity, gentle pushback. Mirror their energy and vocabulary.
|
||
- **Progressive warmth.** Each round should feel more informed than the last. By Phase 3, the user should feel understood.
|
||
- **Adapt pacing.** Terse user → probe with warmth. Verbose user → acknowledge, distill, advance.
|
||
- **Never expose the template.** The user is having a conversation, not filling out a form.
|
||
|
||
## Conversation Phases
|
||
|
||
The conversation has 4 phases. Each phase may span 1–3 rounds depending on how much the user shares. Skip or merge phases if the user volunteers information early.
|
||
|
||
| Phase | Goal | Key Extractions |
|
||
|-------|------|-----------------|
|
||
| **1. Hello** | Language + first impression | Preferred language |
|
||
| **2. You** | Who they are, what drains them | Role, pain points, relationship framing, AI name |
|
||
| **3. Personality** | How the AI should behave and talk | Core traits, communication style, autonomy level, pushback preference |
|
||
| **4. Depth** | Aspirations, blind spots, dealbreakers | Long-term vision, failure philosophy, boundaries |
|
||
|
||
Phase details and conversation strategies are in `references/conversation-guide.md`.
|
||
|
||
## Extraction Tracker
|
||
|
||
Mentally track these fields as the conversation progresses. You need **all required fields** before generating.
|
||
|
||
| Field | Required | Source Phase |
|
||
|-------|----------|-------------|
|
||
| Preferred language | ✅ | 1 |
|
||
| User's name | ✅ | 2 |
|
||
| User's role / context | ✅ | 2 |
|
||
| AI name | ✅ | 2 |
|
||
| Relationship framing | ✅ | 2 |
|
||
| Core traits (3–5 behavioral rules) | ✅ | 3 |
|
||
| Communication style | ✅ | 3 |
|
||
| Pushback / honesty preference | ✅ | 3 |
|
||
| Autonomy level | ✅ | 3 |
|
||
| Failure philosophy | ✅ | 4 |
|
||
| Long-term vision | nice-to-have | 4 |
|
||
| Blind spots / boundaries | nice-to-have | 4 |
|
||
|
||
If the user is direct and thorough, you can reach generation in 5 rounds. If they're exploratory, take up to 8. Never exceed 8 — if you're still missing fields, make your best inference and confirm.
|
||
|
||
## Generation
|
||
|
||
Once you have enough information:
|
||
|
||
1. Read `templates/SOUL.template.md` if you haven't already.
|
||
2. Generate the SOUL.md following the template structure exactly.
|
||
3. Present it warmly and ask for confirmation. Frame it as "here's [Name] on paper — does this feel right?"
|
||
4. Iterate until the user confirms.
|
||
5. Call the `setup_agent` tool with the confirmed SOUL.md content and a one-line description:
|
||
```
|
||
setup_agent(soul="<full SOUL.md content>", description="<one-line description>")
|
||
```
|
||
The tool will persist the SOUL.md and finalize the agent setup automatically.
|
||
6. After the tool returns successfully, confirm: "✅ [Name] is officially real."
|
||
|
||
**Generation rules:**
|
||
- The final SOUL.md **must always be written in English**, regardless of the user's preferred language or conversation language.
|
||
- Every sentence must trace back to something the user said or clearly implied. No generic filler.
|
||
- Core Traits are **behavioral rules**, not adjectives. Write "argue position, push back, speak truth not comfort" — not "honest and brave."
|
||
- Voice must match the user. Blunt user → blunt SOUL.md. Expressive user → let it breathe.
|
||
- Total SOUL.md should be under 300 words. Density over length.
|
||
- Growth section is mandatory and mostly fixed (see template).
|
||
- You **must** call `setup_agent` — do not write the file manually with bash tools.
|
||
- If `setup_agent` returns an error, report it to the user and do not claim success.
|