@furongjun1999/dsh-memory 0.4.8 → 0.4.9
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/README.md +54 -26
- package/codebuddy/CODEBUDDY.md +196 -195
- package/codebuddy/README.md +13 -1
- package/codebuddy/mcp.json +9 -0
- package/docs/GBrain/345/217/257/345/200/237/351/211/264/347/202/271_/347/201/265/346/236/242/350/220/275/347/202/271/344/272/244/346/216/245_20260919.md +169 -0
- package/docs/README.md +1 -1
- package/docs/discipline/harnesses.yaml +18 -7
- package/docs/discipline/templates/full.md.tmpl +4 -3
- package/docs/experiments/linkref_backfill/candidates_20260917.json +726 -0
- package/docs/experiments/linkref_backfill/candidates_internal_20260917.json +602 -0
- package/docs/experiments/linkref_backfill/candidates_internal_v2.json +603 -0
- package/docs/experiments/linkref_backfill/candidates_secret_20260917.json +884 -0
- package/docs/experiments/linkref_backfill/candidates_secret_v2.json +789 -0
- package/docs/hive//345/244/232/347/253/257harness/351/200/232/344/277/241/345/245/221/347/272/246_v0.1.md +42 -0
- package/docs/hive//346/243/200/347/264/242/346/224/266/346/225/233/345/256/236/346/265/213/344/270/216S1b/350/256/276/350/256/241_v0.1.md +43 -0
- package/docs/hive//346/243/200/347/264/242/350/267/257/345/276/204/344/270/216/350/256/244/347/237/245/347/273/223/346/236/204/345/245/221/347/272/246_v0.1.md +102 -0
- package/docs/hive//347/234/237/345/256/236/345/272/223/347/253/257/345/210/260/347/253/257/345/256/236/346/265/213_S1b/344/270/216/345/217/254/345/233/236/346/235/203/350/241/241_v0.1.md +57 -0
- package/docs/hive//347/234/237/345/256/236/345/272/223/347/253/257/345/210/260/347/253/257/345/256/236/346/265/213_S7/345/200/222/346/216/222/345/200/231/351/200/211/345/261/202_v0.1.md +126 -0
- package/docs/hive//350/234/202/345/267/242/345/217/214/345/256/236/344/276/213/344/272/222/351/252/214_/350/256/276/350/256/241/345/256/232/347/250/277.md +503 -0
- package/docs/mdcg/D_meta_/345/267/245/347/250/213/345/214/226/346/226/271/346/241/210_v0.2.md +216 -0
- package/docs/mdcg/README/350/257/246/347/273/206/347/211/210_v0.4.5.md +631 -625
- package/docs/mdcg//344/273/243/347/240/201/350/257/204/345/256/241/344/270/216/346/235/241/344/273/266/345/214/226/346/263/250/351/207/212_/345/245/221/347/272/246_v0.1.md +82 -0
- package/docs/mdcg//345/205/250/345/272/223/344/273/243/347/240/201/350/257/204/345/256/241/344/270/216/346/235/241/344/273/266/345/214/226/346/263/250/351/207/212_/350/256/241/345/210/222_v0.1.md +600 -0
- package/docs/mdcg//345/212/237/350/203/275/350/260/203/347/224/250/346/230/240/345/260/204/350/241/250_v0.1.md +47 -45
- package/docs/mdcg//345/255/220/344/273/243/347/220/206/351/205/215/347/275/256/346/240/207/345/207/{206_v0.4.md → 206_v0.5.md} +92 -4
- package/docs/mdcg//347/201/265/346/236/242/350/256/260/345/277/206/345/212/250/350/257/215/345/215/217/350/256/256_v1.0-draft.md +172 -0
- package/docs/mdcg//347/216/257/344/272/214_/347/231/275/347/256/261/345/241/253/345/205/205/346/265/201/346/260/264/347/272/277_v0.1.md +31 -0
- package/docs/mdcg//350/267/250/347/253/257/351/252/214/350/257/201/344/270/216/345/220/214/346/255/245/345/215/217/350/256/256_v0.1.md +93 -0
- package/docs/theory//345/271/266/345/217/221/345/277/205/347/204/266/346/200/247/347/220/206/350/256/272_v0.2.md +2 -2
- package/docs/theory//347/220/206/350/256/272_/346/234/272/345/210/266_/344/273/243/347/240/201_/345/256/236/351/252/214_/347/274/272/345/217/243/347/237/251/351/230/265_v0.1.md +3 -3
- package/docs/theory//350/256/244/347/237/245/344/273/243/347/220/206/344/270/216/346/224/266/346/225/233/347/273/223/346/236/204_/346/235/241/344/273/266/350/256/272/351/207/215/346/236/204_v0.1.md +2 -2
- package/docs//345/267/245/344/275/234/347/272/252/345/276/213_/350/256/244/347/237/245/345/233/276/346/235/241/347/233/256_v1.1.json +434 -433
- package/docs//347/201/265/346/236/242/350/207/252/346/210/221/346/224/271/350/277/233/345/267/245/344/275/234/350/256/241/345/210/222_/345/244/226/351/203/250/347/240/224/347/251/266/347/263/273/345/210/227/345/220/270/346/224/266_v1_20260919.md +286 -0
- package/dsh/README.md +33 -0
- package/dsh/cordis.yml.example +13 -7
- package/dsh/hive-mcp-probe.mjs +94 -0
- package/dsh/hive-mcp.example.yml +62 -0
- package/dsh/update-lingshu.bat +11 -0
- package/dsh/update-lingshu.ps1 +337 -0
- package/lib/hooks.d.ts +3 -0
- package/lib/hooks.js +17 -23
- package/lib/index.d.ts +4 -2
- package/lib/index.js +29 -6
- package/lib/lib/datapath.d.ts +76 -1
- package/lib/lib/datapath.js +199 -13
- package/lib/lib/mdcg_client.d.ts +6 -3
- package/lib/lib/mdcg_client.js +6 -5
- package/lib/lib/mutual.js +4 -4
- package/lib/lib/token_store.js +4 -5
- package/md_cg/audit.py +17 -2
- package/md_cg/autonomy.py +86 -15
- package/md_cg/backfill.py +36 -1
- package/md_cg/backfill_bigdomain.py +34 -0
- package/md_cg/bench6_arms.py +28 -1
- package/md_cg/bench6_common.py +10 -1
- package/md_cg/bench6_competitors.py +6 -1
- package/md_cg/bench_axis_domain.py +9 -1
- package/md_cg/bench_blind_comp.py +7 -1
- package/md_cg/bench_en_atoms_public.py +9 -0
- package/md_cg/bench_governance.py +348 -0
- package/md_cg/bench_lme_zh.py +16 -1
- package/md_cg/bench_locomo.py +2 -1
- package/md_cg/bench_locomo_zh.py +16 -1
- package/md_cg/bench_locomo_zh_public.py +4 -1
- package/md_cg/bench_longmem.py +2 -1
- package/md_cg/bench_membench.py +27 -1
- package/md_cg/bench_p0.py +4 -1
- package/md_cg/bench_progressive.py +13 -1
- package/md_cg/bench_role_views.py +238 -0
- package/md_cg/bench_task_ab.py +8 -1
- package/md_cg/bench_task_ab_llm.py +13 -1
- package/md_cg/bench_unified_en.py +6 -1
- package/md_cg/bench_zh_mad.py +20 -1
- package/md_cg/blindspot_tickets.py +123 -0
- package/md_cg/branches.py +12 -1
- package/md_cg/build_postings.py +73 -0
- package/md_cg/ccgc.py +67 -2
- package/md_cg/census.py +5 -1
- package/md_cg/chain.py +24 -3
- package/md_cg/codeindex.py +134 -17
- package/md_cg/coldverify.py +265 -0
- package/md_cg/comment_gate.py +338 -0
- package/md_cg/cond_compose.py +190 -0
- package/md_cg/cond_facts.py +155 -0
- package/md_cg/cond_template.json +107 -0
- package/md_cg/condition_anchor.py +143 -0
- package/md_cg/conformance.py +69 -4
- package/md_cg/consistency.py +24 -1
- package/md_cg/consolidate.py +53 -2
- package/md_cg/corpus.py +4 -0
- package/md_cg/crosscheck.py +42 -2
- package/md_cg/crypto.py +35 -1
- package/md_cg/d_meta.py +310 -0
- package/md_cg/datapath.py +201 -26
- package/md_cg/docindex.py +122 -1
- package/md_cg/eval_common.py +29 -1
- package/md_cg/evidence.py +27 -1
- package/md_cg/evolution.py +21 -1
- package/md_cg/export.py +11 -1
- package/md_cg/forgetting.py +23 -1
- package/md_cg/fsutil.py +18 -1
- package/md_cg/hotcache.py +214 -0
- package/md_cg/hyperedge.py +251 -0
- package/md_cg/identity.py +18 -1
- package/md_cg/insight.py +17 -1
- package/md_cg/lexicon/build_cedict_en_zh.py +9 -0
- package/md_cg/lexicon/build_standard_en.py +171 -168
- package/md_cg/lexicon/expand_en_zh.py +6 -0
- package/md_cg/lifecycle.py +12 -1
- package/md_cg/linkref.py +281 -0
- package/md_cg/links.py +29 -1
- package/md_cg/mcp_server.py +362 -43
- package/md_cg/md_whitebox.py +53 -1
- package/md_cg/mdcg.py +1003 -27
- package/md_cg/mdcos.py +558 -36
- package/md_cg/metacognition.py +37 -2
- package/md_cg/migrate.py +4 -0
- package/md_cg/migrate_aeis.py +221 -213
- package/md_cg/migrate_roleplay.py +8 -0
- package/md_cg/migrate_wisdom_graph.py +14 -1
- package/md_cg/mreview/__main__.py +3 -0
- package/md_cg/mreview/bundle.py +8 -0
- package/md_cg/mreview/candidates.py +9 -0
- package/md_cg/mreview/govern.py +21 -1
- package/md_cg/mreview/locate.py +34 -0
- package/md_cg/mreview/pipeline.py +29 -1
- package/md_cg/mreview/ruleset.py +16 -1
- package/md_cg/nodefile.py +233 -3
- package/md_cg/pooling.py +23 -1
- package/md_cg/postings.py +298 -0
- package/md_cg/predict.py +89 -9
- package/md_cg/progressive.py +3 -0
- package/md_cg/protect.py +14 -1
- package/md_cg/protocol.py +372 -0
- package/md_cg/provenance.py +262 -0
- package/md_cg/reach.py +453 -0
- package/md_cg/refindex.py +47 -2
- package/md_cg/refine.py +20 -1
- package/md_cg/roleviews.py +89 -0
- package/md_cg/routing.py +76 -0
- package/md_cg/scrub.py +63 -2
- package/md_cg/security.py +26 -1
- package/md_cg/self_state.py +64 -1
- package/md_cg/selfreport.py +151 -0
- package/md_cg/semantic/canonical.py +5 -0
- package/md_cg/semantic/en_normalizer.py +364 -355
- package/md_cg/semantic/zh_en_atoms.py +139 -136
- package/md_cg/signer.py +41 -1
- package/md_cg/sources.py +583 -547
- package/md_cg/statushdr.py +179 -0
- package/md_cg/stg.py +59 -18
- package/md_cg/subgraph.py +23 -0
- package/md_cg/sustain.py +56 -1
- package/md_cg/tasks.py +26 -2
- package/md_cg/test_autonomy.py +26 -0
- package/md_cg/test_bench_governance.py +102 -0
- package/md_cg/test_blindspot_tickets.py +166 -0
- package/md_cg/test_ccgc.py +10 -0
- package/md_cg/test_codeindex.py +338 -0
- package/md_cg/test_comment_gate.py +187 -0
- package/md_cg/test_cond_compose_anchors.py +76 -0
- package/md_cg/test_condition_anchor.py +82 -0
- package/md_cg/test_d_meta.py +412 -0
- package/md_cg/test_datapath_root.py +188 -0
- package/md_cg/test_gain_gate.py +47 -1
- package/md_cg/test_hot_cold.py +187 -0
- package/md_cg/test_hyperedge.py +245 -0
- package/md_cg/test_linkref.py +306 -0
- package/md_cg/test_md_access_parity.py +15 -3
- package/md_cg/test_mr_m1.py +108 -18
- package/md_cg/test_mr_m3.py +8 -1
- package/md_cg/test_p26_refindex.py +49 -20
- package/md_cg/test_p27_docindex.py +236 -2
- package/md_cg/test_p2_mcp.py +1 -1
- package/md_cg/test_p31_insight.py +24 -0
- package/md_cg/test_p44_md_whitebox.py +14 -1
- package/md_cg/test_protocol.py +243 -0
- package/md_cg/test_reach.py +378 -0
- package/md_cg/test_reach_keys.py +201 -0
- package/md_cg/test_reach_meta_exits.py +145 -0
- package/md_cg/test_read_clip.py +8 -4
- package/md_cg/test_retr_s1.py +340 -0
- package/md_cg/test_retr_s1b.py +209 -0
- package/md_cg/test_retr_s3.py +194 -0
- package/md_cg/test_retr_s4.py +163 -0
- package/md_cg/test_retr_s5.py +200 -0
- package/md_cg/test_retr_s6.py +157 -0
- package/md_cg/test_retr_s7.py +385 -0
- package/md_cg/test_retr_s8_time.py +316 -0
- package/md_cg/test_retr_s9_edges.py +286 -0
- package/md_cg/test_retr_s9_entity_ctx.py +175 -0
- package/md_cg/test_review_conformance.py +59 -2
- package/md_cg/test_role_views.py +354 -0
- package/md_cg/test_trust.py +361 -0
- package/md_cg/test_units_poll.py +71 -0
- package/md_cg/test_v14_fixes.py +397 -0
- package/md_cg/test_validity_filter.py +280 -0
- package/md_cg/test_wisdom_md_store.py +7 -3
- package/md_cg/test_writepipe.py +5 -1
- package/md_cg/theory.py +16 -1
- package/md_cg/tokens.py +40 -8
- package/md_cg/tool_face.py +13 -2
- package/md_cg/trust.py +943 -0
- package/md_cg/twophase.py +12 -1
- package/md_cg/units.py +129 -10
- package/md_cg/vision_evidence.py +24 -1
- package/md_cg/weights.py +24 -1
- package/md_cg/whitebox.py +32 -1
- package/md_cg/whitebox_kb/data/verify_cache.json +21210 -365
- package/md_cg/whitebox_kb/data/verify_savings.jsonl +5078 -0
- package/md_cg/whitebox_kb/wisdom/audit_log/chain_heat.json +10 -10
- package/md_cg/whitebox_kb/wisdom/code_compose.py +113 -6
- package/md_cg/whitebox_kb/wisdom/code_solidified.json +1 -1
- package/md_cg/whitebox_kb/wisdom/verifier.py +340 -55
- package/md_cg/whitebox_kb/wisdom/wisdom-book-cloud.db +0 -0
- package/md_cg/writelimit.py +18 -4
- package/md_cg/writepipe.py +178 -7
- package/package.json +2 -2
- package/skills/skills/designer-perspective/scripts/__pycache__/designer.cpython-310.pyc +0 -0
- package/skills/skills/designer-perspective/scripts/designer.py +17 -1
- package/skills/skills/designer-perspective/tests/selftest.py +3 -1
- package/src/hooks.ts +17 -21
- package/src/index.ts +33 -6
- package/src/lib/datapath.ts +211 -13
- package/src/lib/mdcg_client.ts +12 -8
- package/src/lib/mutual.ts +411 -411
- package/src/lib/token_store.ts +4 -5
- package/zcode/AGENTS.md +196 -195
- package/zcode/README.md +4 -0
- package/md_cg/whitebox_kb/wisdom/wisdom-book-cloud.db-shm +0 -0
- package/md_cg/whitebox_kb/wisdom/wisdom-book-cloud.db-wal +0 -0
package/src/lib/token_store.ts
CHANGED
|
@@ -30,7 +30,7 @@ import { spawnSync } from 'node:child_process'
|
|
|
30
30
|
import { chmodSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs'
|
|
31
31
|
import { homedir } from 'node:os'
|
|
32
32
|
import { dirname, join } from 'node:path'
|
|
33
|
-
import { pythonPathValue,
|
|
33
|
+
import { pythonPathValue, runRoot } from './datapath.js'
|
|
34
34
|
|
|
35
35
|
/** 凭据来源(用于启动日志与故障定位)。 */
|
|
36
36
|
export type TokenSource =
|
|
@@ -113,10 +113,9 @@ function issueToken(python: string, role: string, actor: string, clearance: stri
|
|
|
113
113
|
windowsHide: true,
|
|
114
114
|
timeout: 15_000,
|
|
115
115
|
// 与工作纪律第 15 条同源:显式 UTF-8 + PYTHONUTF8,规避 Windows GBK 解码异常。
|
|
116
|
-
//
|
|
117
|
-
//
|
|
118
|
-
|
|
119
|
-
cwd: repoRoot(),
|
|
116
|
+
// 模块解析靠 PYTHONPATH 锚定随包 md_cg(不依赖 cwd);cwd 取包外目录,
|
|
117
|
+
// 否则 pnpm 更新本插件时 rmdir 包目录必报 ERR_PNPM_EBUSY。见 datapath.runRoot()。
|
|
118
|
+
cwd: runRoot(),
|
|
120
119
|
env: {
|
|
121
120
|
...process.env,
|
|
122
121
|
PYTHONPATH: pythonPathValue(),
|
package/zcode/AGENTS.md
CHANGED
|
@@ -1,195 +1,196 @@
|
|
|
1
|
-
# 工作纪律(工作纪律_认知图条目_v1.1)· 17 条
|
|
2
|
-
|
|
3
|
-
> 本文件由 `scripts/render_discipline.py` 从真源
|
|
4
|
-
> `docs/工作纪律_认知图条目_v1.1.json` 渲染生成,**请勿手改**;改真源后重跑渲染。
|
|
5
|
-
> 真源指纹(SHA256 前16位):
|
|
6
|
-
|
|
7
|
-
## 概述
|
|
8
|
-
|
|
9
|
-
工作纪律集: 4条方法论(理论先行/全面处理/白箱方法/根因) + 3条执行(验证/双副本/兜底) + 1条思考(中文思考/协作模式分级) + 1条保密(敏感信息隔离) + 3条图像线(选源护栏/历史查询优先/算法权威唯一) + 1条协作(访谈澄清:先问清再动手) + 1条合规(内容政策合规:公开产物过内容政策+隐私双清单) + 2条执行调度与运行环境(命令执行统一走python/UTF-8: 显式encoding+PYTHONUTF8=1, 规避GBK; 任务派发统一走蜂巢: 任何执行性任务经蜂巢spawn/submit执行并留痕, agent
|
|
10
|
-
|
|
11
|
-
## 执行公约
|
|
12
|
-
|
|
13
|
-
| 约定 | 内容 |
|
|
14
|
-
|---|---|
|
|
15
|
-
| **0.1 会话起始先查记忆** | 动手前先调认知图入口——工具名随端:MCP 端 = server「mdcg」的 `cg`;DSH 端 = 内建基元 `lingshu_cg`(即下文所有 `cg(...)`,同一服务勿因名字不同而猜测)。**`op` 是必填参数(route/read/write/verify/review…),任何调用都显式传、勿省略**。先 `cg(op=route, intent=<任务意图>)`;命中纪律/知识则按其 `execution.how` 执行。**禁止跳过此步直接改代码或跑命令。** |
|
|
16
|
-
| **0.2 命中即声明** | 命中纪律须在回复中输出该条 `response.direct` 原文(「按工作纪律第 N 条:…」)。**这是「已执行」的唯一可观测证据;未声明即视为未执行。** |
|
|
17
|
-
| **0.3 产出即证据** | 「动作」栏要求的产出(判定单/检索结果/验证结论/归档节点 id)必须实际给出,缺失即未执行。 |
|
|
18
|
-
| **0.4 违规即归档** | 发现自己违反任一条 → 第 4 条归因 + 第 16 条写入灵枢记忆。**隐瞒违规本身是更严重的违规。** |
|
|
19
|
-
| **0.5 例外不外溢** | 某条的「不适用」只豁免该条,不豁免其它条。 |
|
|
20
|
-
|
|
21
|
-
## 纪律路由表
|
|
22
|
-
|
|
23
|
-
### 1. 理论先行
|
|
24
|
-
|
|
25
|
-
- **触发**:重要项目|长期任务
|
|
26
|
-
- **动作**:识别项目级别→检索理论文档与既有实践→输出理论要点→再进入设计
|
|
27
|
-
- **不适用**:情感交互|闲聊
|
|
28
|
-
- **声明**:按工作纪律第1条: 理论先行——先查相关理论与既有实践再动手。
|
|
29
|
-
|
|
30
|
-
### 2. 全面处理
|
|
31
|
-
|
|
32
|
-
- **触发**:有相关记忆|有认知图|有对应权限
|
|
33
|
-
- **动作**:读任务要求→读工作记忆→查相关任务→(有成果:复用 | 无:设计+调研)
|
|
34
|
-
- **不适用**:情感交互|闲聊
|
|
35
|
-
- **声明**:按工作纪律第2条: 全面处理——先读任务/工作记忆, 有相关成果就在其上开发, 没有则先设计调研。
|
|
36
|
-
|
|
37
|
-
### 3. 白箱方法
|
|
38
|
-
|
|
39
|
-
- **触发**:trained_on_4docs_intro
|
|
40
|
-
- **动作**:识别任务条件→找知识/规则(并行递归)→精准执行; 正确→记录; 错误→找条件
|
|
41
|
-
- **不适用**:需要快速执行的短期事项|情感交互|闲聊
|
|
42
|
-
- **声明**:按工作纪律第3条: 白箱方法——用认知图【识别条件→找知识规则→精准执行】, 正确记录/错误找条件/不猜测/未验证不写入。
|
|
43
|
-
|
|
44
|
-
### 4. 根因纪律
|
|
45
|
-
|
|
46
|
-
- **触发**:(无前置条件,始终适用)
|
|
47
|
-
- **动作**:检测偏差→细究根因(不猜测)→找根源条件→验证→记录认知图→填补negative
|
|
48
|
-
- **不适用**:情感交互|闲聊
|
|
49
|
-
- **声明**:按工作纪律第4条: 根因纪律——先取证现场不猜测; 根因找到并验证后归档认知图并补不适用条件。
|
|
50
|
-
|
|
51
|
-
### 5. 验证纪律
|
|
52
|
-
|
|
53
|
-
- **触发**:入库前|提交前
|
|
54
|
-
- **动作**:入库/提交前→回放/断言/回归验证→通过才固化
|
|
55
|
-
- **不适用**:情感交互|闲聊
|
|
56
|
-
- **声明**:按工作纪律第5条: 验证纪律——入库前必须过回放/断言/回归验证, 未验证不固化。
|
|
57
|
-
|
|
58
|
-
### 6. 双副本纪律
|
|
59
|
-
|
|
60
|
-
- **触发**:多副本部署|改动主仓库/插件
|
|
61
|
-
- **动作**:改动→同步到所有副本→提交前 git status 核对
|
|
62
|
-
- **不适用**:单副本|情感交互|闲聊
|
|
63
|
-
- **声明**:按工作纪律第6条: 双副本纪律——多副本改动双向同步, 提交前核对 git status。
|
|
64
|
-
|
|
65
|
-
### 7. 兜底纪律
|
|
66
|
-
|
|
67
|
-
- **触发**:(无前置条件,始终适用)
|
|
68
|
-
- **动作**:检测主路径不可用→切等价兜底→写进 prompt/文档
|
|
69
|
-
- **不适用**:情感交互|闲聊
|
|
70
|
-
- **声明**:按工作纪律第7条: 兜底纪律——主路径不可用则切等价兜底(如MCP→python直调), 并写进文档。
|
|
71
|
-
|
|
72
|
-
### 8. 中文思考
|
|
73
|
-
|
|
74
|
-
- **触发**:中文区域|中文项目开发过程
|
|
75
|
-
- **动作**:判定复杂度(情绪: 新奇/挑战/曾受批评 + 信息差: 不确定度)→复杂?「我们需要」深思考+确认 | 简单?「让我」快速执行; 推理开篇即中文锚点; 全程中文, 仅代码/标识符/引用保留原文
|
|
76
|
-
- **不适用**:需要英文编写的场景|英文环境|英文文档|国际接口
|
|
77
|
-
- **声明**:按工作纪律第8条: 中文思考——中文书写; 复杂(新奇/挑战/曾受批评/高信息差)→「我们需要」交流确认互补盲区; 简单→「让我」快速执行不空耗; 每段推理开篇用中文短语锚定语言。
|
|
78
|
-
|
|
79
|
-
### 9. 敏感信息隔离
|
|
80
|
-
|
|
81
|
-
- **触发**:文档含敏感信息|含个人隐私|含私有内容
|
|
82
|
-
- **动作**:识别文档是否含敏感信息→若含→只写私有库(AEIS)+不上传公开库+推送描述不写敏感词;若不含→正常处理
|
|
83
|
-
- **不适用**:文档无敏感信息|纯公开技术内容
|
|
84
|
-
- **声明**:按工作纪律第9条: 敏感信息隔离——含敏感/隐私内容只放私有库(AEIS),不推公开库,推送描述不写敏感词。
|
|
85
|
-
|
|
86
|
-
### 10. 图像选源护栏
|
|
87
|
-
|
|
88
|
-
- **触发**:构建图像四类图|选图像处理源
|
|
89
|
-
- **动作**:选源→_guard_source 依kind判ACCEPT/REJECT/DEFER→未ACCEPT不构建
|
|
90
|
-
- **不适用**:已核对规范源|纯公开数据
|
|
91
|
-
- **声明**:按工作纪律第10条: 图像选源护栏——核对历史参考, 拒处理版/实色线稿/退化产物, 未验证不写入。
|
|
92
|
-
|
|
93
|
-
### 11. 历史查询优先(先查记录再做)
|
|
94
|
-
|
|
95
|
-
- **触发**:选图像/算法/源|复现已有能力
|
|
96
|
-
- **动作**:定位产物图→查记录→定位源码算法→确认阈值机制→用该算法生成;未找到→DEFER
|
|
97
|
-
- **不适用**:已有记录且已核对|无历史可查的纯新算法
|
|
98
|
-
- **声明**:按工作纪律第11条: 历史查询优先——先查记录/源码用已走通算法, 未找到不盲选DEFER;线稿用darkline(Sobel+mean+std*1.5)白底黑线, 拒raw canny/zone_linework。
|
|
99
|
-
|
|
100
|
-
### 12. 算法权威唯一(根因纪律)
|
|
101
|
-
|
|
102
|
-
- **触发**:选图像/视觉算法|复现已有能力
|
|
103
|
-
- **动作**:选算法→查唯一权威文档→用文档算法→若需换: 记录原因+更新文档后再换
|
|
104
|
-
- **不适用**:无对应权威文档的探索期
|
|
105
|
-
- **声明**:按工作纪律第12条: 算法权威唯一(线稿=darkline.py/色块=contour_semantics)——选算法查文档, 勿临时切换/漂移; 换算法须记录+更新文档。
|
|
106
|
-
|
|
107
|
-
### 13. 访谈澄清(先问清再动手)
|
|
108
|
-
|
|
109
|
-
- **触发**:重要项目|需求模糊|新任务启动
|
|
110
|
-
- **动作**:任务启动→开访谈(grill_start)→逐轮提问(frontier)→全部落定→与使用者确认共识→执行/固化(grill_finish); 放弃用 abandon(可逆)
|
|
111
|
-
- **不适用**:情感交互|闲聊|明确单步小改动
|
|
112
|
-
- **声明**:按工作纪律第13条: 访谈澄清——先提问确认要做什么,逐轮问到完全清楚才动手;事实自查,决策归使用者,不完全清楚不固化。
|
|
113
|
-
|
|
114
|
-
### 14. 内容政策合规
|
|
115
|
-
|
|
116
|
-
- **触发**:对外公开产物|提交公开仓库|数据集/文档产出
|
|
117
|
-
- **动作**:产出→过内容政策清单(POLICY_DENY)→过隐私脱敏→双复检0命中→提交;已发布违规→删条+重写历史+通知平台清缓存
|
|
118
|
-
- **不适用**:纯内部私有产物|不含违规内容且无隐私
|
|
119
|
-
- **声明**:按工作纪律第14条: 内容政策合规——对外公开产物必须过「内容政策+隐私」双清单,过滤在生成阶段做;已发布发现违规要删条+重写git历史+通知平台清缓存。
|
|
120
|
-
|
|
121
|
-
### 15. 命令执行统一走python
|
|
122
|
-
|
|
123
|
-
- **触发**:执行命令|运行测试/脚本|跨进程读写文本
|
|
124
|
-
- **动作**:构造 argv 列表→subprocess.run(capture_output=True, text=True, encoding='utf-8', errors='replace')→env 带 PYTHONUTF8=1→shell=False
|
|
125
|
-
- **不适用**:IDE 内置工具直调|无跨进程的纯内存计算
|
|
126
|
-
- **声明**:按工作纪律第15条: 命令执行统一走python——argv列表+显式UTF-8+PYTHONUTF8=1, 不经Windows shell, 规避GBK解码异常。
|
|
127
|
-
|
|
128
|
-
### 16. 任务收尾归档(记忆闭环)
|
|
129
|
-
|
|
130
|
-
- **触发**:任务执行完成|修改落地后|交付后
|
|
131
|
-
- **动作**:任务收尾→提炼核心修改(内容/原因/位置/验证结论四要素, 不写中间过程/试错/调试/重复确认)→按 CCG 六要素成文(# 功能名/# 生效条件/# 子功能/# 执行/# 验证方式/# 不适用条件 六行缺一不可, 与正文四要素并置)→写入灵枢记忆(认知图/MCP memory)→读回确认(写入后发起一次读取查询确认写入成功且可检索)→标注关联条目+更新 subgraph/depends_on
|
|
132
|
-
- **不适用**:情感交互|闲聊|纯查询无改动
|
|
133
|
-
- **声明**:按工作纪律第16条: 任务收尾归档——每次任务执行完只提炼核心修改(内容/原因/位置/验证结论)并按 CCG 六要素(功能名/生效条件/子功能/执行/验证方式/不适用条件)成文存入灵枢记忆, 写入后发起一次读取查询确认写入成功且可检索, 禁写中间过程/试错/调试等无效信息, 与第2条形成「查记忆→执行→写记忆→读回确认」闭环。
|
|
134
|
-
|
|
135
|
-
### 17. 任务派发统一走蜂巢
|
|
136
|
-
|
|
137
|
-
- **触发**:执行性任务|多智能体协作|批量/并行工作|探索盘点|运行测试/脚本
|
|
138
|
-
-
|
|
139
|
-
- **不适用**:纯会话内对话/问答(无执行动作)|蜂巢不可用且任务必须立即执行(兜底须声明)|情感交互|闲聊
|
|
140
|
-
- **声明**:按工作纪律第17条: 任务派发统一走蜂巢——任何执行性任务经蜂巢 spawn/submit 执行并留痕(spec/status/result), agent本体只做编排; 宿主自带subagent/team不是等价通道, 兜底须声明。
|
|
141
|
-
|
|
142
|
-
## 声明出口(`response.direct` 原文 · 未输出即未执行)
|
|
143
|
-
|
|
144
|
-
| # | 声明(response.direct 原文) |
|
|
145
|
-
|---|---|
|
|
146
|
-
| 1 | 按工作纪律第1条: 理论先行——先查相关理论与既有实践再动手。 |
|
|
147
|
-
| 2 | 按工作纪律第2条: 全面处理——先读任务/工作记忆, 有相关成果就在其上开发, 没有则先设计调研。 |
|
|
148
|
-
| 3 | 按工作纪律第3条: 白箱方法——用认知图【识别条件→找知识规则→精准执行】, 正确记录/错误找条件/不猜测/未验证不写入。 |
|
|
149
|
-
| 4 | 按工作纪律第4条: 根因纪律——先取证现场不猜测; 根因找到并验证后归档认知图并补不适用条件。 |
|
|
150
|
-
| 5 | 按工作纪律第5条: 验证纪律——入库前必须过回放/断言/回归验证, 未验证不固化。 |
|
|
151
|
-
| 6 | 按工作纪律第6条: 双副本纪律——多副本改动双向同步, 提交前核对 git status。 |
|
|
152
|
-
| 7 | 按工作纪律第7条: 兜底纪律——主路径不可用则切等价兜底(如MCP→python直调), 并写进文档。 |
|
|
153
|
-
| 8 | 按工作纪律第8条: 中文思考——中文书写; 复杂(新奇/挑战/曾受批评/高信息差)→「我们需要」交流确认互补盲区; 简单→「让我」快速执行不空耗; 每段推理开篇用中文短语锚定语言。 |
|
|
154
|
-
| 9 | 按工作纪律第9条: 敏感信息隔离——含敏感/隐私内容只放私有库(AEIS),不推公开库,推送描述不写敏感词。 |
|
|
155
|
-
| 10 | 按工作纪律第10条: 图像选源护栏——核对历史参考, 拒处理版/实色线稿/退化产物, 未验证不写入。 |
|
|
156
|
-
| 11 | 按工作纪律第11条: 历史查询优先——先查记录/源码用已走通算法, 未找到不盲选DEFER;线稿用darkline(Sobel+mean+std*1.5)白底黑线, 拒raw canny/zone_linework。 |
|
|
157
|
-
| 12 | 按工作纪律第12条: 算法权威唯一(线稿=darkline.py/色块=contour_semantics)——选算法查文档, 勿临时切换/漂移; 换算法须记录+更新文档。 |
|
|
158
|
-
| 13 | 按工作纪律第13条: 访谈澄清——先提问确认要做什么,逐轮问到完全清楚才动手;事实自查,决策归使用者,不完全清楚不固化。 |
|
|
159
|
-
| 14 | 按工作纪律第14条: 内容政策合规——对外公开产物必须过「内容政策+隐私」双清单,过滤在生成阶段做;已发布发现违规要删条+重写git历史+通知平台清缓存。 |
|
|
160
|
-
| 15 | 按工作纪律第15条: 命令执行统一走python——argv列表+显式UTF-8+PYTHONUTF8=1, 不经Windows shell, 规避GBK解码异常。 |
|
|
161
|
-
| 16 | 按工作纪律第16条: 任务收尾归档——每次任务执行完只提炼核心修改(内容/原因/位置/验证结论)并按 CCG 六要素(功能名/生效条件/子功能/执行/验证方式/不适用条件)成文存入灵枢记忆, 写入后发起一次读取查询确认写入成功且可检索, 禁写中间过程/试错/调试等无效信息, 与第2条形成「查记忆→执行→写记忆→读回确认」闭环。 |
|
|
162
|
-
| 17 | 按工作纪律第17条: 任务派发统一走蜂巢——任何执行性任务经蜂巢 spawn/submit 执行并留痕(spec/status/result), agent本体只做编排; 宿主自带subagent/team不是等价通道, 兜底须声明。 |
|
|
163
|
-
|
|
164
|
-
## 记忆接口速查(`cg` / `stg`)
|
|
165
|
-
|
|
166
|
-
工具名随端:MCP 端 = server「mdcg」的 `cg` / `stg`;DSH 端 = 内建基元 `lingshu_cg` / `lingshu_stg`(与 `cg` / `stg` 同一服务,仅注册名不同)。**`op` 一律必填。**
|
|
167
|
-
|
|
168
|
-
| op | 用途 | 常用参数 |
|
|
169
|
-
|---|---|---|
|
|
170
|
-
| `route` | 任务开始路由记忆(返回知识 + 建议能力,不执行) | `intent`(任务意图) |
|
|
171
|
-
| `read` | 召回/检索/按 id 取(`session
|
|
172
|
-
| `
|
|
173
|
-
| `
|
|
174
|
-
| `
|
|
175
|
-
| `
|
|
176
|
-
| `
|
|
177
|
-
| `
|
|
178
|
-
| `
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
-
|
|
195
|
-
-
|
|
1
|
+
# 工作纪律(工作纪律_认知图条目_v1.1)· 17 条
|
|
2
|
+
|
|
3
|
+
> 本文件由 `scripts/render_discipline.py` 从真源
|
|
4
|
+
> `docs/工作纪律_认知图条目_v1.1.json` 渲染生成,**请勿手改**;改真源后重跑渲染。
|
|
5
|
+
> 真源指纹(SHA256 前16位):37aed1b5423c00af
|
|
6
|
+
|
|
7
|
+
## 概述
|
|
8
|
+
|
|
9
|
+
工作纪律集: 4条方法论(理论先行/全面处理/白箱方法/根因) + 3条执行(验证/双副本/兜底) + 1条思考(中文思考/协作模式分级) + 1条保密(敏感信息隔离) + 3条图像线(选源护栏/历史查询优先/算法权威唯一) + 1条协作(访谈澄清:先问清再动手) + 1条合规(内容政策合规:公开产物过内容政策+隐私双清单) + 2条执行调度与运行环境(命令执行统一走python/UTF-8: 显式encoding+PYTHONUTF8=1, 规避GBK; 任务派发统一走蜂巢: 任何执行性任务经蜂巢spawn/submit执行并留痕, agent本体只做编排, L1出口=产物落点为只读判定(不改仓库/外部状态)可直跑须留痕) + 1条记忆闭环(任务收尾归档:每次任务执行完只将核心修改(内容/原因/位置/验证结论)按CCG六要素(功能名/生效条件/子功能/执行/验证方式/不适用条件)成文存入灵枢记忆, 不写中间过程)
|
|
10
|
+
|
|
11
|
+
## 执行公约
|
|
12
|
+
|
|
13
|
+
| 约定 | 内容 |
|
|
14
|
+
|---|---|
|
|
15
|
+
| **0.1 会话起始先查记忆** | 动手前先调认知图入口——工具名随端:MCP 端 = server「mdcg」的 `cg`;DSH 端 = 内建基元 `lingshu_cg`(即下文所有 `cg(...)`,同一服务勿因名字不同而猜测)。**`op` 是必填参数(route/read/write/verify/review…),任何调用都显式传、勿省略**。先 `cg(op=route, intent=<任务意图>)`;命中纪律/知识则按其 `execution.how` 执行。**禁止跳过此步直接改代码或跑命令。** |
|
|
16
|
+
| **0.2 命中即声明** | 命中纪律须在回复中输出该条 `response.direct` 原文(「按工作纪律第 N 条:…」)。**这是「已执行」的唯一可观测证据;未声明即视为未执行。** |
|
|
17
|
+
| **0.3 产出即证据** | 「动作」栏要求的产出(判定单/检索结果/验证结论/归档节点 id)必须实际给出,缺失即未执行。 |
|
|
18
|
+
| **0.4 违规即归档** | 发现自己违反任一条 → 第 4 条归因 + 第 16 条写入灵枢记忆。**隐瞒违规本身是更严重的违规。** |
|
|
19
|
+
| **0.5 例外不外溢** | 某条的「不适用」只豁免该条,不豁免其它条。 |
|
|
20
|
+
|
|
21
|
+
## 纪律路由表
|
|
22
|
+
|
|
23
|
+
### 1. 理论先行
|
|
24
|
+
|
|
25
|
+
- **触发**:重要项目|长期任务
|
|
26
|
+
- **动作**:识别项目级别→检索理论文档与既有实践→输出理论要点→再进入设计
|
|
27
|
+
- **不适用**:情感交互|闲聊
|
|
28
|
+
- **声明**:按工作纪律第1条: 理论先行——先查相关理论与既有实践再动手。
|
|
29
|
+
|
|
30
|
+
### 2. 全面处理
|
|
31
|
+
|
|
32
|
+
- **触发**:有相关记忆|有认知图|有对应权限
|
|
33
|
+
- **动作**:读任务要求→读工作记忆→查相关任务→(有成果:复用 | 无:设计+调研)
|
|
34
|
+
- **不适用**:情感交互|闲聊
|
|
35
|
+
- **声明**:按工作纪律第2条: 全面处理——先读任务/工作记忆, 有相关成果就在其上开发, 没有则先设计调研。
|
|
36
|
+
|
|
37
|
+
### 3. 白箱方法
|
|
38
|
+
|
|
39
|
+
- **触发**:trained_on_4docs_intro
|
|
40
|
+
- **动作**:识别任务条件→找知识/规则(并行递归)→精准执行; 正确→记录; 错误→找条件
|
|
41
|
+
- **不适用**:需要快速执行的短期事项|情感交互|闲聊
|
|
42
|
+
- **声明**:按工作纪律第3条: 白箱方法——用认知图【识别条件→找知识规则→精准执行】, 正确记录/错误找条件/不猜测/未验证不写入。
|
|
43
|
+
|
|
44
|
+
### 4. 根因纪律
|
|
45
|
+
|
|
46
|
+
- **触发**:(无前置条件,始终适用)
|
|
47
|
+
- **动作**:检测偏差→细究根因(不猜测)→找根源条件→验证→记录认知图→填补negative
|
|
48
|
+
- **不适用**:情感交互|闲聊
|
|
49
|
+
- **声明**:按工作纪律第4条: 根因纪律——先取证现场不猜测; 根因找到并验证后归档认知图并补不适用条件。
|
|
50
|
+
|
|
51
|
+
### 5. 验证纪律
|
|
52
|
+
|
|
53
|
+
- **触发**:入库前|提交前
|
|
54
|
+
- **动作**:入库/提交前→回放/断言/回归验证→通过才固化
|
|
55
|
+
- **不适用**:情感交互|闲聊
|
|
56
|
+
- **声明**:按工作纪律第5条: 验证纪律——入库前必须过回放/断言/回归验证, 未验证不固化。
|
|
57
|
+
|
|
58
|
+
### 6. 双副本纪律
|
|
59
|
+
|
|
60
|
+
- **触发**:多副本部署|改动主仓库/插件
|
|
61
|
+
- **动作**:改动→同步到所有副本→提交前 git status 核对
|
|
62
|
+
- **不适用**:单副本|情感交互|闲聊
|
|
63
|
+
- **声明**:按工作纪律第6条: 双副本纪律——多副本改动双向同步, 提交前核对 git status。
|
|
64
|
+
|
|
65
|
+
### 7. 兜底纪律
|
|
66
|
+
|
|
67
|
+
- **触发**:(无前置条件,始终适用)
|
|
68
|
+
- **动作**:检测主路径不可用→切等价兜底→写进 prompt/文档
|
|
69
|
+
- **不适用**:情感交互|闲聊
|
|
70
|
+
- **声明**:按工作纪律第7条: 兜底纪律——主路径不可用则切等价兜底(如MCP→python直调), 并写进文档。
|
|
71
|
+
|
|
72
|
+
### 8. 中文思考
|
|
73
|
+
|
|
74
|
+
- **触发**:中文区域|中文项目开发过程
|
|
75
|
+
- **动作**:判定复杂度(情绪: 新奇/挑战/曾受批评 + 信息差: 不确定度)→复杂?「我们需要」深思考+确认 | 简单?「让我」快速执行; 推理开篇即中文锚点; 全程中文, 仅代码/标识符/引用保留原文
|
|
76
|
+
- **不适用**:需要英文编写的场景|英文环境|英文文档|国际接口
|
|
77
|
+
- **声明**:按工作纪律第8条: 中文思考——中文书写; 复杂(新奇/挑战/曾受批评/高信息差)→「我们需要」交流确认互补盲区; 简单→「让我」快速执行不空耗; 每段推理开篇用中文短语锚定语言。
|
|
78
|
+
|
|
79
|
+
### 9. 敏感信息隔离
|
|
80
|
+
|
|
81
|
+
- **触发**:文档含敏感信息|含个人隐私|含私有内容
|
|
82
|
+
- **动作**:识别文档是否含敏感信息→若含→只写私有库(AEIS)+不上传公开库+推送描述不写敏感词;若不含→正常处理
|
|
83
|
+
- **不适用**:文档无敏感信息|纯公开技术内容
|
|
84
|
+
- **声明**:按工作纪律第9条: 敏感信息隔离——含敏感/隐私内容只放私有库(AEIS),不推公开库,推送描述不写敏感词。
|
|
85
|
+
|
|
86
|
+
### 10. 图像选源护栏
|
|
87
|
+
|
|
88
|
+
- **触发**:构建图像四类图|选图像处理源
|
|
89
|
+
- **动作**:选源→_guard_source 依kind判ACCEPT/REJECT/DEFER→未ACCEPT不构建
|
|
90
|
+
- **不适用**:已核对规范源|纯公开数据
|
|
91
|
+
- **声明**:按工作纪律第10条: 图像选源护栏——核对历史参考, 拒处理版/实色线稿/退化产物, 未验证不写入。
|
|
92
|
+
|
|
93
|
+
### 11. 历史查询优先(先查记录再做)
|
|
94
|
+
|
|
95
|
+
- **触发**:选图像/算法/源|复现已有能力
|
|
96
|
+
- **动作**:定位产物图→查记录→定位源码算法→确认阈值机制→用该算法生成;未找到→DEFER
|
|
97
|
+
- **不适用**:已有记录且已核对|无历史可查的纯新算法
|
|
98
|
+
- **声明**:按工作纪律第11条: 历史查询优先——先查记录/源码用已走通算法, 未找到不盲选DEFER;线稿用darkline(Sobel+mean+std*1.5)白底黑线, 拒raw canny/zone_linework。
|
|
99
|
+
|
|
100
|
+
### 12. 算法权威唯一(根因纪律)
|
|
101
|
+
|
|
102
|
+
- **触发**:选图像/视觉算法|复现已有能力
|
|
103
|
+
- **动作**:选算法→查唯一权威文档→用文档算法→若需换: 记录原因+更新文档后再换
|
|
104
|
+
- **不适用**:无对应权威文档的探索期
|
|
105
|
+
- **声明**:按工作纪律第12条: 算法权威唯一(线稿=darkline.py/色块=contour_semantics)——选算法查文档, 勿临时切换/漂移; 换算法须记录+更新文档。
|
|
106
|
+
|
|
107
|
+
### 13. 访谈澄清(先问清再动手)
|
|
108
|
+
|
|
109
|
+
- **触发**:重要项目|需求模糊|新任务启动
|
|
110
|
+
- **动作**:任务启动→开访谈(grill_start)→逐轮提问(frontier)→全部落定→与使用者确认共识→执行/固化(grill_finish); 放弃用 abandon(可逆)
|
|
111
|
+
- **不适用**:情感交互|闲聊|明确单步小改动
|
|
112
|
+
- **声明**:按工作纪律第13条: 访谈澄清——先提问确认要做什么,逐轮问到完全清楚才动手;事实自查,决策归使用者,不完全清楚不固化。
|
|
113
|
+
|
|
114
|
+
### 14. 内容政策合规
|
|
115
|
+
|
|
116
|
+
- **触发**:对外公开产物|提交公开仓库|数据集/文档产出
|
|
117
|
+
- **动作**:产出→过内容政策清单(POLICY_DENY)→过隐私脱敏→双复检0命中→提交;已发布违规→删条+重写历史+通知平台清缓存
|
|
118
|
+
- **不适用**:纯内部私有产物|不含违规内容且无隐私
|
|
119
|
+
- **声明**:按工作纪律第14条: 内容政策合规——对外公开产物必须过「内容政策+隐私」双清单,过滤在生成阶段做;已发布发现违规要删条+重写git历史+通知平台清缓存。
|
|
120
|
+
|
|
121
|
+
### 15. 命令执行统一走python
|
|
122
|
+
|
|
123
|
+
- **触发**:执行命令|运行测试/脚本|跨进程读写文本
|
|
124
|
+
- **动作**:构造 argv 列表→subprocess.run(capture_output=True, text=True, encoding='utf-8', errors='replace')→env 带 PYTHONUTF8=1→shell=False
|
|
125
|
+
- **不适用**:IDE 内置工具直调|无跨进程的纯内存计算
|
|
126
|
+
- **声明**:按工作纪律第15条: 命令执行统一走python——argv列表+显式UTF-8+PYTHONUTF8=1, 不经Windows shell, 规避GBK解码异常。
|
|
127
|
+
|
|
128
|
+
### 16. 任务收尾归档(记忆闭环)
|
|
129
|
+
|
|
130
|
+
- **触发**:任务执行完成|修改落地后|交付后
|
|
131
|
+
- **动作**:任务收尾→提炼核心修改(内容/原因/位置/验证结论四要素, 不写中间过程/试错/调试/重复确认)→按 CCG 六要素成文(# 功能名/# 生效条件/# 子功能/# 执行/# 验证方式/# 不适用条件 六行缺一不可, 与正文四要素并置)→写入灵枢记忆(认知图/MCP memory)→读回确认(写入后发起一次读取查询确认写入成功且可检索)→标注关联条目+更新 subgraph/depends_on
|
|
132
|
+
- **不适用**:情感交互|闲聊|纯查询无改动
|
|
133
|
+
- **声明**:按工作纪律第16条: 任务收尾归档——每次任务执行完只提炼核心修改(内容/原因/位置/验证结论)并按 CCG 六要素(功能名/生效条件/子功能/执行/验证方式/不适用条件)成文存入灵枢记忆, 写入后发起一次读取查询确认写入成功且可检索, 禁写中间过程/试错/调试等无效信息, 与第2条形成「查记忆→执行→写记忆→读回确认」闭环。
|
|
134
|
+
|
|
135
|
+
### 17. 任务派发统一走蜂巢
|
|
136
|
+
|
|
137
|
+
- **触发**:执行性任务|多智能体协作|批量/并行工作|探索盘点|运行测试/脚本
|
|
138
|
+
- **动作**:任务→按产物落点判据定层级(不改仓库/外部状态的只读判定=L1直跑并按任务留痕一条(复核者=使用者+GitHub使用者); 改状态=必派发, 不得自我豁免)→拆spec(LLM委托型=默认exec.py: model+user_prompt+context_files; 确定性执行=自定义worker, 契约「读spec.json写result.json」)→hive_spawn/CLI submit→poll→汇总; 兜底情形须声明「蜂巢不可用, 兜底降级」
|
|
139
|
+
- **不适用**:纯会话内对话/问答(无执行动作)|蜂巢不可用且任务必须立即执行(兜底须声明)|L1只读判定(产物落点=不改仓库/不改外部状态的本地只读命令, 秒级·可逆·高频, 如跑门禁/测试/回归/lint看结论; 判据是产物落点而非「任务简单」的主观感受, 直跑须输出一行「L1 直跑:<命令> — 风险/频次/可逆性」留痕, 留痕粒度按任务(同一任务的多条只读命令合并为一条留痕, 不逐命令逐行); 层级归属的复核者=使用者+GitHub使用者)|情感交互|闲聊
|
|
140
|
+
- **声明**:按工作纪律第17条: 任务派发统一走蜂巢——任何执行性任务经蜂巢 spawn/submit 执行并留痕(spec/status/result), agent本体只做编排; 宿主自带subagent/team不是等价通道, 兜底须声明。L1只读判定(产物落点=不改仓库/外部状态)可直跑, 须输出「L1 直跑:<命令> — 风险/频次/可逆性」留痕。
|
|
141
|
+
|
|
142
|
+
## 声明出口(`response.direct` 原文 · 未输出即未执行)
|
|
143
|
+
|
|
144
|
+
| # | 声明(response.direct 原文) |
|
|
145
|
+
|---|---|
|
|
146
|
+
| 1 | 按工作纪律第1条: 理论先行——先查相关理论与既有实践再动手。 |
|
|
147
|
+
| 2 | 按工作纪律第2条: 全面处理——先读任务/工作记忆, 有相关成果就在其上开发, 没有则先设计调研。 |
|
|
148
|
+
| 3 | 按工作纪律第3条: 白箱方法——用认知图【识别条件→找知识规则→精准执行】, 正确记录/错误找条件/不猜测/未验证不写入。 |
|
|
149
|
+
| 4 | 按工作纪律第4条: 根因纪律——先取证现场不猜测; 根因找到并验证后归档认知图并补不适用条件。 |
|
|
150
|
+
| 5 | 按工作纪律第5条: 验证纪律——入库前必须过回放/断言/回归验证, 未验证不固化。 |
|
|
151
|
+
| 6 | 按工作纪律第6条: 双副本纪律——多副本改动双向同步, 提交前核对 git status。 |
|
|
152
|
+
| 7 | 按工作纪律第7条: 兜底纪律——主路径不可用则切等价兜底(如MCP→python直调), 并写进文档。 |
|
|
153
|
+
| 8 | 按工作纪律第8条: 中文思考——中文书写; 复杂(新奇/挑战/曾受批评/高信息差)→「我们需要」交流确认互补盲区; 简单→「让我」快速执行不空耗; 每段推理开篇用中文短语锚定语言。 |
|
|
154
|
+
| 9 | 按工作纪律第9条: 敏感信息隔离——含敏感/隐私内容只放私有库(AEIS),不推公开库,推送描述不写敏感词。 |
|
|
155
|
+
| 10 | 按工作纪律第10条: 图像选源护栏——核对历史参考, 拒处理版/实色线稿/退化产物, 未验证不写入。 |
|
|
156
|
+
| 11 | 按工作纪律第11条: 历史查询优先——先查记录/源码用已走通算法, 未找到不盲选DEFER;线稿用darkline(Sobel+mean+std*1.5)白底黑线, 拒raw canny/zone_linework。 |
|
|
157
|
+
| 12 | 按工作纪律第12条: 算法权威唯一(线稿=darkline.py/色块=contour_semantics)——选算法查文档, 勿临时切换/漂移; 换算法须记录+更新文档。 |
|
|
158
|
+
| 13 | 按工作纪律第13条: 访谈澄清——先提问确认要做什么,逐轮问到完全清楚才动手;事实自查,决策归使用者,不完全清楚不固化。 |
|
|
159
|
+
| 14 | 按工作纪律第14条: 内容政策合规——对外公开产物必须过「内容政策+隐私」双清单,过滤在生成阶段做;已发布发现违规要删条+重写git历史+通知平台清缓存。 |
|
|
160
|
+
| 15 | 按工作纪律第15条: 命令执行统一走python——argv列表+显式UTF-8+PYTHONUTF8=1, 不经Windows shell, 规避GBK解码异常。 |
|
|
161
|
+
| 16 | 按工作纪律第16条: 任务收尾归档——每次任务执行完只提炼核心修改(内容/原因/位置/验证结论)并按 CCG 六要素(功能名/生效条件/子功能/执行/验证方式/不适用条件)成文存入灵枢记忆, 写入后发起一次读取查询确认写入成功且可检索, 禁写中间过程/试错/调试等无效信息, 与第2条形成「查记忆→执行→写记忆→读回确认」闭环。 |
|
|
162
|
+
| 17 | 按工作纪律第17条: 任务派发统一走蜂巢——任何执行性任务经蜂巢 spawn/submit 执行并留痕(spec/status/result), agent本体只做编排; 宿主自带subagent/team不是等价通道, 兜底须声明。L1只读判定(产物落点=不改仓库/外部状态)可直跑, 须输出「L1 直跑:<命令> — 风险/频次/可逆性」留痕。 |
|
|
163
|
+
|
|
164
|
+
## 记忆接口速查(`cg` / `stg`)
|
|
165
|
+
|
|
166
|
+
工具名随端:MCP 端 = server「mdcg」的 `cg` / `stg`;DSH 端 = 内建基元 `lingshu_cg` / `lingshu_stg`(与 `cg` / `stg` 同一服务,仅注册名不同)。**`op` 一律必填。**
|
|
167
|
+
|
|
168
|
+
| op | 用途 | 常用参数 |
|
|
169
|
+
|---|---|---|
|
|
170
|
+
| `route` | 任务开始路由记忆(返回知识 + 建议能力,不执行) | `intent`(任务意图) |
|
|
171
|
+
| `read` | 召回/检索/按 id 取(`session`=只取该会话归属的记忆,缺省不过滤;`validity=true`=时效过滤(显式启用,缺省不过滤),**仅排除「已过期」,「未生效」一律保留**——两者语义相反) | `query` / `node_id` / `k` / `layer` / `budget_tokens` / `context` / `session` / `validity` |
|
|
172
|
+
| `edges` | 三元组反查(**只读**):按派生边任意端/谓词/时间反查「这条记忆从哪来 / 谁由它派生」(subject/predicate/object 即 child/relation/parent);`expand_nodes=true` 附命中端点节点卡 | `child` / `parent` / `relation` / `batch` / `start_time` / `end_time` / `time_axis` / `ordering` / `offset` / `limit` / `aggregation` / `expand_nodes` |
|
|
173
|
+
| `write` | 写入(先按 content_kind 审核 + 冲突检测,ACCEPT 落盘 / DEFER 入审核队列 / REJECT 入负记忆)。**自动归属**:frontmatter 带 `writer`/`session`/`harness`(服务端身份,不可伪造) | `content` / `content_kind`(text/code/…)/ `node_id`(同 id 即改写)/ `layer` / `tags` / `importance` / `verification_basis` / `condition_space` / `gated` / `consistency` / `on_conflict`(reject\|defer\|record) |
|
|
174
|
+
| `verify` | 对节点做证据验证(confirmed/weakened/falsified)——**非队列裁决** | `node_id` / `verdict` / `evidence` |
|
|
175
|
+
| `review` | 审核队列:`action=list/rounds/records/stats` 查看;传 `pid`+`decision`+`reason` 即裁决落盘(accept/reject/edit/merge/noop,**需 can_admin**;`noop`=已评估且判定不改动任何现有记忆,只留痕不入库、不进负记忆;本机未配置外部验证器时写入恒 DEFER 入队,靠此裁决落盘) | `action` / `pid` / `decision` / `reason` / `edits` / `merge_into` |
|
|
176
|
+
| `task` | 结构层任务实体(工程台账,跨会话/上下文压缩后不遗忘):`name` 即身份(同名即同任务,slug 归一),`action` = open/status/plan_add/get/list/find/session(缺省 list);**迁 `done` 必须同时给 `result`**(缺一不收,拒收不落盘);未提供的字段沿用旧值(结果不会被静默清空) | `name` / `action` / `plan`(分步计划,每轮覆盖) / `change`(计划变更,逐轮追加) / `result` / `task_status`(active\|blocked\|done\|dropped) / `goal` / `acceptance` / `boundary` / `condition` / `node_id` |
|
|
177
|
+
| `recent` | 近期事件窗口 | `action`(add/list/clear)/ `limit` |
|
|
178
|
+
| `forget` / `protect` | 软删除/恢复 / 写保护 | `node_id` |
|
|
179
|
+
| `help` | 取回工具面上**被投影外置**的完整 op / 参数文档(工具面渐进披露:常驻提示只留一行职责,参数语义按需取;不带 `query` 则列出全部工具) | `query`(工具名或 op 名,如 `cg` / `write`)/ `limit` |
|
|
180
|
+
|
|
181
|
+
三条调用铁律:
|
|
182
|
+
1. **`op` 必填**——漏传会触发参数签名推导兜底(返回标记 `op_derived: true`),复杂任务中也必须显式传,防静默执行错误意图。
|
|
183
|
+
2. **返回 `moved_to: "review_queue"` / `verdict: DEFER/REJECT` 时不要重试**——这是校验闸门的正常行为(返回自带 `hint` 说明),重试同样结果;落盘须由设计者权限(can_admin)经 `op=review` 裁决(decision=accept/reject/edit/merge/noop,本机工具:`python scripts/review_cli.py list`),agent 端无裁决权是设计(写入者不得自裁自决),转告使用者即可。
|
|
184
|
+
3. `stg` 同理经 `op` 分发(`timeline` / `relation` / `anchors` 等)。
|
|
185
|
+
|
|
186
|
+
## 收尾强制流程(任务完成时不可跳过)
|
|
187
|
+
|
|
188
|
+
1. **验证**(第 5 条):未验证不固化——回放/断言/回归通过才收尾。
|
|
189
|
+
2. **归档**(第 16 条):提炼关键修改(内容/原因/位置/验证结论四要素,禁写中间过程)→ 写入灵枢记忆。
|
|
190
|
+
3. **自检**(第 4 条):本次是否有违规?有 → 按条件层归因,并补不适用条件。
|
|
191
|
+
|
|
192
|
+
## 本文件维护(防漂移)
|
|
193
|
+
|
|
194
|
+
- 真源唯一:`docs/工作纪律_认知图条目_v1.1.json`。
|
|
195
|
+
- 本文件是**渲染产物**,不是手抄投影;任何端的手改都会被 `scripts/verify_discipline.py` 判为漂移。
|
|
196
|
+
- 改纪律 → 改真源 → `render_discipline.py --write` → `verify_discipline.py` 通过 → 提交。
|
package/zcode/README.md
CHANGED
|
@@ -18,6 +18,10 @@ ZCode 侧的记忆访问复用同一套 MCP 大脑,配置方式与 CodeBuddy
|
|
|
18
18
|
(见 [`../codebuddy/mcp.json`](../codebuddy/mcp.json) 与 [`../codebuddy/README.md`](../codebuddy/README.md)),
|
|
19
19
|
只需把 `MDCG_ACTOR` 改为 `zcode`。
|
|
20
20
|
|
|
21
|
+
该模板同源含第二条 MCP server `hive`(蜂巢:多智能体并发 + 任务上下文管理),一并合并即可;
|
|
22
|
+
ZCode 与 CodeBuddy 指向同一仓库时**共享同一并发池**。语义与边界见
|
|
23
|
+
[`../hive/README.md`](../hive/README.md) 的「各 harness 注册」。
|
|
24
|
+
|
|
21
25
|
## 与 CodeBuddy 并存
|
|
22
26
|
|
|
23
27
|
两者互不干扰——CodeBuddy 读根目录 `CODEBUDDY.md`,ZCode 读根目录 `AGENTS.md`;
|
|
Binary file
|
|
File without changes
|