{"id":48372029,"url":"https://github.com/fatby/duncrew","last_synced_at":"2026-04-05T17:01:59.545Z","repository":{"id":338232290,"uuid":"1157098665","full_name":"FatBy/DunCrew","owner":"FatBy","description":"Build your LLM-driven world. ","archived":false,"fork":false,"pushed_at":"2026-03-24T08:34:39.000Z","size":85326,"stargazers_count":3,"open_issues_count":7,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-25T10:19:37.918Z","etag":null,"topics":["agent-framework","agi","ai-agents","autonomous-agents","llm","python","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FatBy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-02-13T12:33:00.000Z","updated_at":"2026-03-24T08:34:43.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/FatBy/DunCrew","commit_stats":null,"previous_names":["fatby/dd-os","fatby/duncrew"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/FatBy/DunCrew","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FatBy%2FDunCrew","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FatBy%2FDunCrew/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FatBy%2FDunCrew/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FatBy%2FDunCrew/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FatBy","download_url":"https://codeload.github.com/FatBy/DunCrew/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FatBy%2FDunCrew/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31442924,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T15:22:31.103Z","status":"ssl_error","status_checked_at":"2026-04-05T15:22:00.205Z","response_time":75,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent-framework","agi","ai-agents","autonomous-agents","llm","python","typescript"],"created_at":"2026-04-05T17:01:57.872Z","updated_at":"2026-04-05T17:01:59.531Z","avatar_url":"https://github.com/FatBy.png","language":"TypeScript","readme":"\u003cdiv align=\"center\"\u003e\n\n![DunCrew Banner](docs/images/ddos-banner.png)\n\n# DunCrew\n\n### 给 AI 一个工位 — Give AI a Workstation\n\nThe AI that learns, evolves, and remembers -- not just chats.\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)\n[![TypeScript](https://img.shields.io/badge/TypeScript-5.0-blue.svg)](https://www.typescriptlang.org/)\n[![React](https://img.shields.io/badge/React-18-61dafb.svg)](https://reactjs.org/)\n[![Python](https://img.shields.io/badge/Python-3.10+-yellow.svg)](https://python.org/)\n\n[GitHub](https://github.com/FatBy/DunCrew) | [Skills Hub](https://github.com/FatBy/DunCrew/tree/main/skills) | [Examples](examples/)\n\n\u003c/div\u003e\n\n---\n\n## What is DunCrew?\n\n**DunCrew** is a self-evolving AI operating system that runs entirely on your local machine. Unlike traditional AI assistants that treat every conversation as a blank slate, DunCrew builds **persistent expertise** -- each workflow node (Nexus) develops its own memory, scoring history, and operational genes through use.\n\nBuilt on a ReAct execution engine with Reflexion self-correction, Critic verification, and confidence-based knowledge promotion, DunCrew turns your AI from a stateless chatbot into a **trainable specialist that gets smarter over time**.\n\n---\n\n## Interface Preview\n\nDunCrew replaces the traditional chatbox with an explorable digital world. Three visual themes available:\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e\u003cb\u003eMinimalist\u003c/b\u003e\u003cbr/\u003eFloating particles, breathing glow\u003cbr/\u003e\u003cimg src=\"docs/images/screenshot-main.png\" width=\"280\"/\u003e\u003c/td\u003e\n\u003ctd align=\"center\"\u003e\u003cb\u003eCosmos\u003c/b\u003e\u003cbr/\u003eDeep space planets, orbital rings\u003cbr/\u003e\u003cimg src=\"docs/images/screenshot-cosmos.png\" width=\"280\"/\u003e\u003c/td\u003e\n\u003ctd align=\"center\"\u003e\u003cb\u003eCityscape\u003c/b\u003e\u003cbr/\u003eIsometric pixel city tiles\u003cbr/\u003e\u003cimg src=\"docs/images/screenshot-city.png\" width=\"280\"/\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e\u003cb\u003eWorld View (with Nexuses)\u003c/b\u003e\u003cbr/\u003eEach node is a trainable AI expert\u003cbr/\u003e\u003cimg src=\"docs/images/screenshot-world-populated.png\" width=\"560\"/\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e\u003cb\u003eAI Chat Panel\u003c/b\u003e\u003cbr/\u003eReAct execution with tool calls\u003cbr/\u003e\u003cimg src=\"docs/images/screenshot-chat-active.png\" width=\"350\"/\u003e\u003c/td\u003e\n\u003ctd align=\"center\"\u003e\u003cb\u003eSkill Tree\u003c/b\u003e\u003cbr/\u003e90+ skills with particle visualization\u003cbr/\u003e\u003cimg src=\"docs/images/screenshot-skilltree-populated.png\" width=\"450\"/\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e\u003cb\u003eSettings\u003c/b\u003e\u003cbr/\u003eOpenAI-compatible API config\u003cbr/\u003e\u003cimg src=\"docs/images/screenshot-settings.png\" width=\"400\"/\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n---\n\n## Why DunCrew?\n\nMost AI agent frameworks give you a loop: *plan, act, observe, repeat*. DunCrew goes further with **self-evolution primitives** that no other open-source framework provides:\n\n| Capability | DunCrew | Typical AI Agents |\n|---|---|---|\n| **Per-domain memory** | L1 Hot/Cold split per Nexus + L0 global knowledge | Flat session history |\n| **Knowledge promotion** | Multi-signal confidence scoring, auto-promote to global | None |\n| **Self-correction** | Reflexion (structured retry) + Critic (result verification) | Simple retry |\n| **Experience harvesting** | Gene Pool with confidence decay + cross-Nexus sharing | None |\n| **Soul evolution** | Dual-layer MBTI + behavioral amendment system | Static persona |\n| **File awareness** | O(1) File Registry, zero redundant exploration | Re-explore every time |\n| **Execution scoring** | 0-100 per Nexus, streak bonuses, tool dimension tracking | None |\n| **Dangerous op control** | 3-level risk classification + user approval flow | Basic confirmation |\n\n---\n\n## Architecture\n\n```\n  GitHub / Slack / Local Bash / MCP Servers / Web\n               |\n               v   (MCP Standard Protocol)\n  +-------------------------------+\n  |      duncrew-server.py        |  \u003c-- Tool Execution Layer\n  |      (Python / MCP Host)      |\n  +---------------+---------------+\n                  |  (HTTP REST API)\n  +---------------+---------------+\n  |      ReAct Execution Engine   |  \u003c-- Task Orchestration\n  |   Reflexion | Critic | Genes  |\n  +---------------+---------------+\n                  |\n  +---------------+---------------+\n  |   Nexus Context Engine        |  \u003c-- Memory \u0026 Context\n  |   L1-Hot | L1-Cold | L0       |\n  |   File Registry | Gene Pool   |\n  +---------------+---------------+\n                  |\n       [LLM API: GPT-4o / DeepSeek / Claude / ...]\n```\n\n---\n\n## Core Systems\n\n### Nexus -- Trainable AI Experts\n\nEach Nexus is not just a prompt template -- it's an **evolvable workflow node** with its own brain.\n\n- **Level Progression**: XP earned per execution, visual upgrades on level-up\n- **Independent Scoring**: 0-100 scale with streak bonuses and tool-dimension tracking\n- **Bound Skills**: Compose multiple SKILLs into specialized workflows\n- **SOP Memory**: Standard operating procedures that persist across sessions\n- **Per-Nexus Context Engine**: Each Nexus maintains its own L1 memory and context budget\n- **Custom Model Assignment**: Different LLMs for different Nexuses\n\n### Two-Tier Memory -- Knowledge That Grows\n\nDunCrew implements a biologically-inspired memory architecture:\n\n**L1 Memory (Per-Nexus, Private)**\n- **L1-Hot**: Last 5 turns as structured action snapshots (metadata only, not raw output)\n- **L1-Cold**: Semantic RAG retrieval via FTS5 + vector similarity + temporal decay\n\n**L0 Memory (Global, Shared)**\n- High-confidence L1 memories get **promoted** to L0 after passing multi-signal validation\n- Promotion requires: `confidence \u003e= 0.7` AND `3+ independent signals`\n- L0 memories accessible by ALL Nexuses, enabling cross-domain knowledge transfer\n\n**Confidence Signals:**\n\n| Signal | Delta | Source |\n|--------|-------|--------|\n| Environment Assertion | +0.15 | Critic verifies tool output |\n| Human Approval | +0.15 | User approves high-risk operation |\n| Human Rejection | -0.15 | User rejects operation |\n| System Failure | -0.20 | Tool execution fails |\n\n**File Registry** -- Every file operation is auto-registered with O(1) lookup. The agent never wastes turns re-exploring known paths.\n\n### Soul Evolution -- Dual-Layer Personality\n\nDunCrew implements a constitutional soul system with behavioral evolution:\n\n**Layer 1: Factory Constitution (Immutable)**\n- Defined in `SOUL.md`: identity, core truths, boundaries, vibe statement\n- MBTI personality derived from rules-based axis scoring (E/I, S/N, T/F, J/P)\n\n**Layer 2: Behavioral Amendments (Dynamic)**\n- Cross-Nexus behavioral pattern detection (requires 2+ Nexus observation)\n- Amendments carry weight (0~1) with 30-day half-life decay\n- Active amendments injected into LLM context during execution\n- User approval workflow: draft → approved → archived\n- Expressed MBTI shifts based on accumulated behavioral modifiers\n\n### Gene Pool -- Self-Healing Experience Library\n\nThe Gene Pool captures `error → recovery` patterns as reusable \"genes\":\n\n- **Auto-Harvesting**: Detects failure-then-success patterns in execution traces\n- **Structured Signal Matching**: Error classification by type (missing_resource, permission, transient, etc.)\n- **Reflexion Injection**: Matching repair genes injected as hints during error recovery\n- **Cross-Nexus Sharing**: Genes from one Nexus help others facing similar errors\n- **Confidence Lifecycle**: Success boosts confidence, failure decays it, old genes naturally retire\n- **Nexus Communication**: Capability, artifact, and activity genes enable cross-Nexus discovery\n\n### ReAct Engine -- Self-Correcting Execution\n\nThe execution engine goes beyond basic plan-act loops:\n\n- **Task Decomposition**: Complex tasks auto-split into executable sub-steps\n- **Tool Calling**: File I/O, shell commands, web search, MCP tools, and 90+ skills\n- **Reflexion**: On failure, triggers structured self-reflection with error analysis -- not blind retry\n- **Critic Verification**: After file writes and shell commands, automatically verifies the result\n- **Dangerous Operation Approval**: 3-tier risk classification (critical/high/medium) with user approval flow\n\n---\n\n## Quick Start\n\n### Requirements\n\n| Dependency | Version |\n|------------|---------|\n| Node.js | \u003e= 18 (v20+ recommended) |\n| Python | \u003e= 3.10 |\n| Git | Latest |\n\n### Step 1: Clone\n\n```bash\ngit clone https://github.com/FatBy/DunCrew.git\ncd DunCrew\n```\n\n### Step 2: Install Dependencies\n\n```bash\n# Frontend\nnpm install\n\n# Python (optional, for YAML support)\npip install pyyaml\n```\n\n### Step 3: Launch\n\n**Windows:**\nDouble-click `start.bat` in the project root.\n\n**macOS / Linux:**\n```bash\nchmod +x start.sh \u0026\u0026 ./start.sh\n```\n\n**Manual Launch (all platforms):**\n\n```bash\n# Terminal 1 -- Backend\npython duncrew-server.py --path ~/.duncrew --port 3001\n\n# Terminal 2 -- Frontend\nnpm run dev\n```\n\nOpen **http://localhost:5173** in your browser.\n\n---\n\n## API Configuration\n\n1. Click **Settings** in the left sidebar\n2. Fill in Base URL, API Key, and Model name\n\n### Supported Providers\n\n| Provider | Recommended Models | Base URL |\n|----------|-------------------|----------|\n| OpenAI | gpt-4o, gpt-4o-mini | `https://api.openai.com/v1` |\n| DeepSeek | deepseek-chat, deepseek-reasoner | `https://api.deepseek.com/v1` |\n| Claude | claude-3.5-sonnet | Via compatible proxy |\n| Moonshot | moonshot-v1-8k | `https://api.moonshot.cn/v1` |\n| SiliconFlow | Various open-source models | `https://api.siliconflow.cn/v1` |\n\n---\n\n## Examples\n\nSee the [`examples/`](examples/) directory for real-world use cases:\n\n| Example | Description |\n|---------|-------------|\n| [Novel Writing](examples/novel-writing.md) | Using the novel-master Nexus to plan and write a chapter |\n| [Code Project](examples/code-project.md) | Building a utility library with ReAct execution |\n| [Research Report](examples/research-report.md) | Web search + structured report generation |\n\n---\n\n## Skill System\n\n### Built-in Tools\n\n| Tool | Description |\n|------|-------------|\n| `readFile` / `writeFile` | File I/O with auto File Registry tracking |\n| `runCmd` | Shell commands (with 3-tier safety approval) |\n| `webSearch` / `webFetch` | Web search and page fetching |\n| `saveMemory` / `searchMemory` | Two-tier memory read/write |\n| `listDir` | Directory listing with auto-registration |\n\n### 90+ Community Skills\n\nDunCrew ships with 90+ skills covering code generation, document writing, image creation, stock analysis, PPT generation, and more. Skills are defined as `SKILL.md` files and hot-reload without restart.\n\n### Create Custom Skills\n\n```\n~/.duncrew/skills/my-skill/SKILL.md\n```\n\n```markdown\n---\nname: my-skill\ndescription: My custom skill\nversion: 1.0.0\n---\n\n# Instructions\n\nWhat this skill does and how it works...\n```\n\n---\n\n## Five Core Modules\n\n| Module | Description |\n|--------|-------------|\n| **World View** | Nexus node map with drag interaction and theme switching |\n| **Task Monitor** | Running/completed tasks with real-time execution step tracking |\n| **Skill Tree** | AI capability radar with particle visualization |\n| **Memory Palace** | Adventure logs, memory playback, AI narrative generation |\n| **Soul Tower** | AI personality config (SOUL.md), dual-layer MBTI evolution, behavioral amendments |\n\n---\n\n## Data Directory\n\n```\n~/.duncrew/\n├── SOUL.md              # AI personality config\n├── USER.md              # User preferences\n├── skills/              # Skill definitions (SKILL.md)\n├── nexuses/             # Nexus workflow data + SOPs\n├── memory/              # Two-tier memory storage\n│   ├── exec_traces/     # JSONL execution traces\n│   ├── gene_pool.jsonl  # Self-healing gene library\n│   └── soul_amendments.json  # Behavioral amendment records\n└── logs/                # Conversation logs\n```\n\n---\n\n## Tech Stack\n\n| Layer | Technology |\n|-------|-----------|\n| Frontend | React 18 + TypeScript + Vite + Zustand + Tailwind CSS + Framer Motion |\n| Rendering | Canvas 2D (GameCanvas engine) |\n| Backend | Python (duncrew-server.py) with SQLite + FTS5 |\n| Memory | SQLite (FTS5 full-text search) + JSONL traces + localStorage |\n| Desktop | Tauri (optional, for native packaging) |\n| Protocol | HTTP REST API + MCP Standard Protocol |\n\n---\n\n## Contributing\n\nWe welcome contributions! Check out our [open issues](https://github.com/FatBy/DunCrew/issues) for `good first issue` labels.\n\n---\n\n## Security\n\n- All API keys stored in browser localStorage, never uploaded\n- Backend binds to `127.0.0.1` (localhost only)\n- 3-tier dangerous command classification with approval dialogs\n- File operations sandboxed to workspace directory\n- Sensitive data auto-redacted in execution traces\n- Run `python duncrew-server.py --doctor` to check security config\n\n---\n\n## License\n\nMIT\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffatby%2Fduncrew","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffatby%2Fduncrew","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffatby%2Fduncrew/lists"}