codebee 0.1.70 → 0.1.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +589 -580
- package/LICENSE +21 -21
- package/README.md +509 -509
- package/app/.playwright-cli/console-2026-09-23T08-26-03-635Z.log +88 -0
- package/app/.playwright-cli/page-2026-09-23T08-26-03-845Z.yml +126 -0
- package/app/.playwright-cli/page-2026-09-23T08-29-44-203Z.png +0 -0
- package/app/.playwright-cli/page-2026-09-23T08-35-42-046Z.yml +210 -0
- package/app/.playwright-cli/page-2026-09-23T08-36-52-858Z.png +0 -0
- package/app/.playwright-cli/page-2026-09-23T08-37-33-938Z.png +0 -0
- package/app/.playwright-cli/run-detail-after.png +0 -0
- package/app/core/acceptance.py +100 -100
- package/app/core/aiflavor.py +197 -197
- package/app/core/artifacts.py +148 -148
- package/app/core/assets.py +110 -110
- package/app/core/attachments.py +623 -623
- package/app/core/audit.py +30 -30
- package/app/core/backup.py +470 -470
- package/app/core/beekeeper.py +183 -183
- package/app/core/benchstore.py +95 -95
- package/app/core/board.py +209 -209
- package/app/core/bookmeta.py +935 -935
- package/app/core/bookmeta_catalog.py +180 -180
- package/app/core/branching.py +137 -137
- package/app/core/builtin_agent.py +1673 -1673
- package/app/core/capability.py +144 -144
- package/app/core/chaptersafe.py +32 -32
- package/app/core/cleanup.py +303 -303
- package/app/core/compaction.py +201 -201
- package/app/core/covergen.py +356 -356
- package/app/core/defectretro.py +43 -43
- package/app/core/diagnostics.py +114 -114
- package/app/core/dispatch.py +190 -190
- package/app/core/dispatch_log.py +128 -128
- package/app/core/env_scrub.py +85 -85
- package/app/core/errorlog.py +137 -137
- package/app/core/evalbench.py +720 -720
- package/app/core/evaluation.py +174 -174
- package/app/core/failure_notify.py +290 -290
- package/app/core/flows.py +7 -7
- package/app/core/goal_service.py +167 -167
- package/app/core/health.py +374 -374
- package/app/core/history.py +38 -38
- package/app/core/hooks.py +162 -162
- package/app/core/manager.py +2143 -2143
- package/app/core/mocks.py +64 -64
- package/app/core/notify.py +201 -201
- package/app/core/novel_quality.py +189 -189
- package/app/core/operations.py +228 -228
- package/app/core/paihang.py +138 -138
- package/app/core/portguard.py +111 -111
- package/app/core/preview.py +293 -293
- package/app/core/publish/__init__.py +7 -7
- package/app/core/publish/auto.py +367 -367
- package/app/core/publish/browser.py +655 -655
- package/app/core/publish/fanqie.py +165 -165
- package/app/core/publish/flow.py +589 -589
- package/app/core/publish/flows-fanqie-calibrated.json +336 -336
- package/app/core/publish/ledger.py +229 -229
- package/app/core/publish/manager.py +824 -824
- package/app/core/publish/qimao.py +146 -146
- package/app/core/publish/ws.py +139 -139
- package/app/core/redact.py +38 -38
- package/app/core/repeat_guard.py +129 -129
- package/app/core/router.py +398 -398
- package/app/core/runner.py +2142 -2142
- package/app/core/selfupdate.py +384 -384
- package/app/core/session_log.py +161 -161
- package/app/core/sessions.py +312 -312
- package/app/core/settings.py +3 -2
- package/app/core/settings_schema.py +270 -270
- package/app/core/share_page.py +114 -114
- package/app/core/skill_scan.py +122 -122
- package/app/core/skillpacks/fanqie-novel.md +80 -80
- package/app/core/skillpacks/market/character-bible.md +66 -66
- package/app/core/skillpacks/market/code-risk-checklist.md +58 -58
- package/app/core/skillpacks/market/git-workflow.md +57 -57
- package/app/core/skillpacks/market/release-notes.md +72 -72
- package/app/core/skillpacks/market/weekly-report.md +71 -71
- package/app/core/skillpacks/market/worldview-consistency.md +70 -70
- package/app/core/step_runner.py +132 -132
- package/app/core/task_compile.py +199 -199
- package/app/core/telemetry.py +292 -292
- package/app/core/tlsctx.py +64 -64
- package/app/core/token_meter.py +147 -147
- package/app/core/tracing.py +144 -144
- package/app/core/upstream.py +41 -41
- package/app/core/usage.py +1035 -1035
- package/app/core/volumes.py +389 -389
- package/app/core/wxdigest.py +858 -858
- package/app/core/zentao.py +2614 -2614
- package/app/main.py +38 -3
- package/app/mcp_server.py +175 -175
- package/app/pet.py +1 -1
- package/app/pick_dialog.py +110 -110
- package/app/ui/app.js +11 -4
- package/app/ui/artdiff.js +74 -74
- package/app/ui/board.html +162 -162
- package/app/ui/board.js +305 -305
- package/app/ui/i18n.js +1 -1
- package/app/ui/icons/bee.svg +79 -79
- package/app/ui/manifest.json +16 -16
- package/app/ui/qrcode.js +2297 -2297
- package/app/ui/style.css +65 -18
- package/app//344/275/234/345/223/201/344/277/241/346/201/257-/344/270/203/347/214/253.md +18 -0
- package/bin/tutti.js +147 -147
- package/package.json +47 -47
- package/tools/wx_reader.py +261 -261
package/app/ui/icons/bee.svg
CHANGED
|
@@ -1,79 +1,79 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64">
|
|
2
|
-
<!-- CodeBee 写实小蜂:琥珀黑条纹腹 + 绒毛胸背 + 半透明翅脉 + 扇翅动画。
|
|
3
|
-
经 <img> 引用(独立文档,渐变 id 互不串扰);翅动媒体查询随系统 reduce-motion 关停。 -->
|
|
4
|
-
<defs>
|
|
5
|
-
<linearGradient id="cbAbd" x1="0" y1="0" x2="0" y2="1">
|
|
6
|
-
<stop offset="0" stop-color="#ffcd66"/>
|
|
7
|
-
<stop offset=".55" stop-color="#f0a92c"/>
|
|
8
|
-
<stop offset="1" stop-color="#c67c12"/>
|
|
9
|
-
</linearGradient>
|
|
10
|
-
<radialGradient id="cbThx" cx=".38" cy=".3" r="1.05">
|
|
11
|
-
<stop offset="0" stop-color="#7a5a26"/>
|
|
12
|
-
<stop offset=".6" stop-color="#3d2c10"/>
|
|
13
|
-
<stop offset="1" stop-color="#1f1505"/>
|
|
14
|
-
</radialGradient>
|
|
15
|
-
<linearGradient id="cbWing" x1="0" y1="0" x2="1" y2="1">
|
|
16
|
-
<stop offset="0" stop-color="#ffffff" stop-opacity=".85"/>
|
|
17
|
-
<stop offset="1" stop-color="#cfe0f5" stop-opacity=".16"/>
|
|
18
|
-
</linearGradient>
|
|
19
|
-
<clipPath id="cbAbdClip"><ellipse cx="32" cy="44" rx="11.5" ry="13.5"/></clipPath>
|
|
20
|
-
</defs>
|
|
21
|
-
<style>
|
|
22
|
-
.wingL, .wingR { transform-box: view-box; }
|
|
23
|
-
.wingL { transform-origin: 27px 21px; animation: cbFlapL .16s ease-in-out infinite alternate; }
|
|
24
|
-
.wingR { transform-origin: 37px 21px; animation: cbFlapR .16s ease-in-out infinite alternate; }
|
|
25
|
-
@keyframes cbFlapL { from { transform: rotate(-16deg); } to { transform: rotate(9deg); } }
|
|
26
|
-
@keyframes cbFlapR { from { transform: rotate(16deg); } to { transform: rotate(-9deg); } }
|
|
27
|
-
@media (prefers-reduced-motion: reduce) { .wingL, .wingR { animation: none; } }
|
|
28
|
-
</style>
|
|
29
|
-
|
|
30
|
-
<!-- 触角 -->
|
|
31
|
-
<path d="M29.5 8C27.5 4.6 24.6 3 21.8 3.6" fill="none" stroke="#241a05" stroke-width="1.4" stroke-linecap="round"/>
|
|
32
|
-
<path d="M34.5 8c2-3.4 4.9-5 7.7-4.4" fill="none" stroke="#241a05" stroke-width="1.4" stroke-linecap="round"/>
|
|
33
|
-
<circle cx="21.6" cy="3.7" r="1.5" fill="#241a05"/>
|
|
34
|
-
<circle cx="42.4" cy="3.7" r="1.5" fill="#241a05"/>
|
|
35
|
-
|
|
36
|
-
<!-- 左翅(前后两片,扇翅绕胸侧基点) -->
|
|
37
|
-
<g class="wingL">
|
|
38
|
-
<ellipse cx="16.5" cy="19.5" rx="11.5" ry="4.8" transform="rotate(-34 26 20.5)"
|
|
39
|
-
fill="url(#cbWing)" stroke="#e8f1fb" stroke-opacity=".65" stroke-width=".7"/>
|
|
40
|
-
<ellipse cx="20" cy="24.5" rx="8.2" ry="3.5" transform="rotate(-22 26.5 24.5)"
|
|
41
|
-
fill="url(#cbWing)" stroke="#e8f1fb" stroke-opacity=".55" stroke-width=".6"/>
|
|
42
|
-
<g transform="rotate(-34 26 20.5)" fill="none" stroke="#a9c1dd" stroke-opacity=".4" stroke-width=".5">
|
|
43
|
-
<path d="M26 20.5 8 15.5"/><path d="M26 21.5 7.5 20.5"/>
|
|
44
|
-
</g>
|
|
45
|
-
</g>
|
|
46
|
-
<!-- 右翅 -->
|
|
47
|
-
<g class="wingR">
|
|
48
|
-
<ellipse cx="47.5" cy="19.5" rx="11.5" ry="4.8" transform="rotate(34 38 20.5)"
|
|
49
|
-
fill="url(#cbWing)" stroke="#e8f1fb" stroke-opacity=".65" stroke-width=".7"/>
|
|
50
|
-
<ellipse cx="44" cy="24.5" rx="8.2" ry="3.5" transform="rotate(22 37.5 24.5)"
|
|
51
|
-
fill="url(#cbWing)" stroke="#e8f1fb" stroke-opacity=".55" stroke-width=".6"/>
|
|
52
|
-
<g transform="rotate(34 38 20.5)" fill="none" stroke="#a9c1dd" stroke-opacity=".4" stroke-width=".5">
|
|
53
|
-
<path d="M38 20.5 56 15.5"/><path d="M38 21.5 56.5 20.5"/>
|
|
54
|
-
</g>
|
|
55
|
-
</g>
|
|
56
|
-
|
|
57
|
-
<!-- 腹部:琥珀底 + 黑条纹 + 高光 + 螫针 -->
|
|
58
|
-
<ellipse cx="32" cy="44" rx="11.5" ry="13.5" fill="url(#cbAbd)"/>
|
|
59
|
-
<g clip-path="url(#cbAbdClip)" fill="#241a05">
|
|
60
|
-
<path d="M20 40.5 Q32 36.5 44 40.5 L44 46.5 Q32 42.5 20 46.5 Z"/>
|
|
61
|
-
<path d="M20.5 49 Q32 45.5 43.5 49 L43.2 54.5 Q32 51.5 20.8 54.5 Z" opacity=".92"/>
|
|
62
|
-
</g>
|
|
63
|
-
<path d="M25.2 36q-2.6 4-2 9.5" stroke="#ffe9ad" stroke-opacity=".7" stroke-width="1.6" stroke-linecap="round" fill="none"/>
|
|
64
|
-
<ellipse cx="32" cy="44" rx="11.5" ry="13.5" fill="none" stroke="#8a5a10" stroke-opacity=".35" stroke-width=".8"/>
|
|
65
|
-
<path d="M32 58.5 29.8 54h4.4Z" fill="#241a05"/>
|
|
66
|
-
|
|
67
|
-
<!-- 胸背:绒毛渐变 + 虚线描边模拟绒毛缘 -->
|
|
68
|
-
<ellipse cx="32" cy="25.5" rx="9.2" ry="9.8" fill="url(#cbThx)"/>
|
|
69
|
-
<ellipse cx="32" cy="25.5" rx="9.2" ry="9.8" fill="none" stroke="#8a6a2e" stroke-opacity=".45"
|
|
70
|
-
stroke-width="1" stroke-dasharray="1.2 1.6"/>
|
|
71
|
-
|
|
72
|
-
<!-- 头:复眼 + 高光 -->
|
|
73
|
-
<circle cx="32" cy="12.8" r="6.3" fill="#241a05"/>
|
|
74
|
-
<ellipse cx="28" cy="12.6" rx="2.4" ry="3" fill="#0e0a03"/>
|
|
75
|
-
<ellipse cx="36" cy="12.6" rx="2.4" ry="3" fill="#0e0a03"/>
|
|
76
|
-
<circle cx="28.9" cy="11.3" r=".7" fill="#7d6538" opacity=".8"/>
|
|
77
|
-
<circle cx="36.9" cy="11.3" r=".7" fill="#7d6538" opacity=".8"/>
|
|
78
|
-
<path d="M28.5 8.6q3.5-1.6 7 0" stroke="#8a6a2e" stroke-opacity=".55" stroke-width=".8" fill="none"/>
|
|
79
|
-
</svg>
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64">
|
|
2
|
+
<!-- CodeBee 写实小蜂:琥珀黑条纹腹 + 绒毛胸背 + 半透明翅脉 + 扇翅动画。
|
|
3
|
+
经 <img> 引用(独立文档,渐变 id 互不串扰);翅动媒体查询随系统 reduce-motion 关停。 -->
|
|
4
|
+
<defs>
|
|
5
|
+
<linearGradient id="cbAbd" x1="0" y1="0" x2="0" y2="1">
|
|
6
|
+
<stop offset="0" stop-color="#ffcd66"/>
|
|
7
|
+
<stop offset=".55" stop-color="#f0a92c"/>
|
|
8
|
+
<stop offset="1" stop-color="#c67c12"/>
|
|
9
|
+
</linearGradient>
|
|
10
|
+
<radialGradient id="cbThx" cx=".38" cy=".3" r="1.05">
|
|
11
|
+
<stop offset="0" stop-color="#7a5a26"/>
|
|
12
|
+
<stop offset=".6" stop-color="#3d2c10"/>
|
|
13
|
+
<stop offset="1" stop-color="#1f1505"/>
|
|
14
|
+
</radialGradient>
|
|
15
|
+
<linearGradient id="cbWing" x1="0" y1="0" x2="1" y2="1">
|
|
16
|
+
<stop offset="0" stop-color="#ffffff" stop-opacity=".85"/>
|
|
17
|
+
<stop offset="1" stop-color="#cfe0f5" stop-opacity=".16"/>
|
|
18
|
+
</linearGradient>
|
|
19
|
+
<clipPath id="cbAbdClip"><ellipse cx="32" cy="44" rx="11.5" ry="13.5"/></clipPath>
|
|
20
|
+
</defs>
|
|
21
|
+
<style>
|
|
22
|
+
.wingL, .wingR { transform-box: view-box; }
|
|
23
|
+
.wingL { transform-origin: 27px 21px; animation: cbFlapL .16s ease-in-out infinite alternate; }
|
|
24
|
+
.wingR { transform-origin: 37px 21px; animation: cbFlapR .16s ease-in-out infinite alternate; }
|
|
25
|
+
@keyframes cbFlapL { from { transform: rotate(-16deg); } to { transform: rotate(9deg); } }
|
|
26
|
+
@keyframes cbFlapR { from { transform: rotate(16deg); } to { transform: rotate(-9deg); } }
|
|
27
|
+
@media (prefers-reduced-motion: reduce) { .wingL, .wingR { animation: none; } }
|
|
28
|
+
</style>
|
|
29
|
+
|
|
30
|
+
<!-- 触角 -->
|
|
31
|
+
<path d="M29.5 8C27.5 4.6 24.6 3 21.8 3.6" fill="none" stroke="#241a05" stroke-width="1.4" stroke-linecap="round"/>
|
|
32
|
+
<path d="M34.5 8c2-3.4 4.9-5 7.7-4.4" fill="none" stroke="#241a05" stroke-width="1.4" stroke-linecap="round"/>
|
|
33
|
+
<circle cx="21.6" cy="3.7" r="1.5" fill="#241a05"/>
|
|
34
|
+
<circle cx="42.4" cy="3.7" r="1.5" fill="#241a05"/>
|
|
35
|
+
|
|
36
|
+
<!-- 左翅(前后两片,扇翅绕胸侧基点) -->
|
|
37
|
+
<g class="wingL">
|
|
38
|
+
<ellipse cx="16.5" cy="19.5" rx="11.5" ry="4.8" transform="rotate(-34 26 20.5)"
|
|
39
|
+
fill="url(#cbWing)" stroke="#e8f1fb" stroke-opacity=".65" stroke-width=".7"/>
|
|
40
|
+
<ellipse cx="20" cy="24.5" rx="8.2" ry="3.5" transform="rotate(-22 26.5 24.5)"
|
|
41
|
+
fill="url(#cbWing)" stroke="#e8f1fb" stroke-opacity=".55" stroke-width=".6"/>
|
|
42
|
+
<g transform="rotate(-34 26 20.5)" fill="none" stroke="#a9c1dd" stroke-opacity=".4" stroke-width=".5">
|
|
43
|
+
<path d="M26 20.5 8 15.5"/><path d="M26 21.5 7.5 20.5"/>
|
|
44
|
+
</g>
|
|
45
|
+
</g>
|
|
46
|
+
<!-- 右翅 -->
|
|
47
|
+
<g class="wingR">
|
|
48
|
+
<ellipse cx="47.5" cy="19.5" rx="11.5" ry="4.8" transform="rotate(34 38 20.5)"
|
|
49
|
+
fill="url(#cbWing)" stroke="#e8f1fb" stroke-opacity=".65" stroke-width=".7"/>
|
|
50
|
+
<ellipse cx="44" cy="24.5" rx="8.2" ry="3.5" transform="rotate(22 37.5 24.5)"
|
|
51
|
+
fill="url(#cbWing)" stroke="#e8f1fb" stroke-opacity=".55" stroke-width=".6"/>
|
|
52
|
+
<g transform="rotate(34 38 20.5)" fill="none" stroke="#a9c1dd" stroke-opacity=".4" stroke-width=".5">
|
|
53
|
+
<path d="M38 20.5 56 15.5"/><path d="M38 21.5 56.5 20.5"/>
|
|
54
|
+
</g>
|
|
55
|
+
</g>
|
|
56
|
+
|
|
57
|
+
<!-- 腹部:琥珀底 + 黑条纹 + 高光 + 螫针 -->
|
|
58
|
+
<ellipse cx="32" cy="44" rx="11.5" ry="13.5" fill="url(#cbAbd)"/>
|
|
59
|
+
<g clip-path="url(#cbAbdClip)" fill="#241a05">
|
|
60
|
+
<path d="M20 40.5 Q32 36.5 44 40.5 L44 46.5 Q32 42.5 20 46.5 Z"/>
|
|
61
|
+
<path d="M20.5 49 Q32 45.5 43.5 49 L43.2 54.5 Q32 51.5 20.8 54.5 Z" opacity=".92"/>
|
|
62
|
+
</g>
|
|
63
|
+
<path d="M25.2 36q-2.6 4-2 9.5" stroke="#ffe9ad" stroke-opacity=".7" stroke-width="1.6" stroke-linecap="round" fill="none"/>
|
|
64
|
+
<ellipse cx="32" cy="44" rx="11.5" ry="13.5" fill="none" stroke="#8a5a10" stroke-opacity=".35" stroke-width=".8"/>
|
|
65
|
+
<path d="M32 58.5 29.8 54h4.4Z" fill="#241a05"/>
|
|
66
|
+
|
|
67
|
+
<!-- 胸背:绒毛渐变 + 虚线描边模拟绒毛缘 -->
|
|
68
|
+
<ellipse cx="32" cy="25.5" rx="9.2" ry="9.8" fill="url(#cbThx)"/>
|
|
69
|
+
<ellipse cx="32" cy="25.5" rx="9.2" ry="9.8" fill="none" stroke="#8a6a2e" stroke-opacity=".45"
|
|
70
|
+
stroke-width="1" stroke-dasharray="1.2 1.6"/>
|
|
71
|
+
|
|
72
|
+
<!-- 头:复眼 + 高光 -->
|
|
73
|
+
<circle cx="32" cy="12.8" r="6.3" fill="#241a05"/>
|
|
74
|
+
<ellipse cx="28" cy="12.6" rx="2.4" ry="3" fill="#0e0a03"/>
|
|
75
|
+
<ellipse cx="36" cy="12.6" rx="2.4" ry="3" fill="#0e0a03"/>
|
|
76
|
+
<circle cx="28.9" cy="11.3" r=".7" fill="#7d6538" opacity=".8"/>
|
|
77
|
+
<circle cx="36.9" cy="11.3" r=".7" fill="#7d6538" opacity=".8"/>
|
|
78
|
+
<path d="M28.5 8.6q3.5-1.6 7 0" stroke="#8a6a2e" stroke-opacity=".55" stroke-width=".8" fill="none"/>
|
|
79
|
+
</svg>
|
package/app/ui/manifest.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "CodeBee · 多智能体编排台",
|
|
3
|
-
"short_name": "CodeBee",
|
|
4
|
-
"description": "All agents, one hive. 一句话目标,自动拆解、路由、执行、验证与跨厂商评审。",
|
|
5
|
-
"start_url": "/",
|
|
6
|
-
"scope": "/",
|
|
7
|
-
"display": "standalone",
|
|
8
|
-
"orientation": "portrait-primary",
|
|
9
|
-
"background_color": "#0f1115",
|
|
10
|
-
"theme_color": "#6d5df6",
|
|
11
|
-
"icons": [
|
|
12
|
-
{ "src": "icons/icon-192.png", "sizes": "192x192", "type": "image/png", "purpose": "any" },
|
|
13
|
-
{ "src": "icons/icon-512.png", "sizes": "512x512", "type": "image/png", "purpose": "any" },
|
|
14
|
-
{ "src": "icons/icon-512.png", "sizes": "512x512", "type": "image/png", "purpose": "maskable" }
|
|
15
|
-
]
|
|
16
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "CodeBee · 多智能体编排台",
|
|
3
|
+
"short_name": "CodeBee",
|
|
4
|
+
"description": "All agents, one hive. 一句话目标,自动拆解、路由、执行、验证与跨厂商评审。",
|
|
5
|
+
"start_url": "/",
|
|
6
|
+
"scope": "/",
|
|
7
|
+
"display": "standalone",
|
|
8
|
+
"orientation": "portrait-primary",
|
|
9
|
+
"background_color": "#0f1115",
|
|
10
|
+
"theme_color": "#6d5df6",
|
|
11
|
+
"icons": [
|
|
12
|
+
{ "src": "icons/icon-192.png", "sizes": "192x192", "type": "image/png", "purpose": "any" },
|
|
13
|
+
{ "src": "icons/icon-512.png", "sizes": "512x512", "type": "image/png", "purpose": "any" },
|
|
14
|
+
{ "src": "icons/icon-512.png", "sizes": "512x512", "type": "image/png", "purpose": "maskable" }
|
|
15
|
+
]
|
|
16
|
+
}
|