cnhkmcp 2.1.9__py3-none-any.whl → 2.3.0__py3-none-any.whl
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.
- cnhkmcp/__init__.py +1 -1
- cnhkmcp/untracked/AI/321/206/320/231/320/243/321/205/342/225/226/320/265/321/204/342/225/221/342/225/221/BRAIN_AI/321/206/320/231/320/243/321/205/342/225/226/320/265/321/204/342/225/221/342/225/221Mac_Linux/321/207/320/231/320/230/321/206/320/254/320/274.zip +0 -0
- cnhkmcp/untracked/AI/321/206/320/231/320/243/321/205/342/225/226/320/265/321/204/342/225/221/342/225/221//321/205/320/237/320/234/321/205/320/227/342/225/227/321/205/320/276/320/231/321/210/320/263/320/225AI/321/206/320/231/320/243/321/205/342/225/226/320/265/321/204/342/225/221/342/225/221_Windows/321/207/320/231/320/230/321/206/320/254/320/274.exe +0 -0
- cnhkmcp/untracked/AI/321/206/320/261/320/234/321/211/320/255/320/262/321/206/320/237/320/242/321/204/342/225/227/342/225/242/README.md +1 -1
- cnhkmcp/untracked/AI/321/206/320/261/320/234/321/211/320/255/320/262/321/206/320/237/320/242/321/204/342/225/227/342/225/242/config.json +2 -2
- cnhkmcp/untracked/AI/321/206/320/261/320/234/321/211/320/255/320/262/321/206/320/237/320/242/321/204/342/225/227/342/225/242/main.py +1 -1
- cnhkmcp/untracked/AI/321/206/320/261/320/234/321/211/320/255/320/262/321/206/320/237/320/242/321/204/342/225/227/342/225/242/vector_db/chroma.sqlite3 +0 -0
- cnhkmcp/untracked/APP/Tranformer/Transformer.py +2 -2
- cnhkmcp/untracked/APP/Tranformer/transformer_config.json +1 -1
- cnhkmcp/untracked/APP/blueprints/feature_engineering.py +2 -2
- cnhkmcp/untracked/APP/blueprints/inspiration_house.py +4 -4
- cnhkmcp/untracked/APP/blueprints/paper_analysis.py +3 -3
- cnhkmcp/untracked/APP/give_me_idea/BRAIN_Alpha_Template_Expert_SystemPrompt.md +34 -73
- cnhkmcp/untracked/APP/give_me_idea/alpha_data_specific_template_master.py +2 -2
- cnhkmcp/untracked/APP/give_me_idea/what_is_Alpha_template.md +366 -1
- cnhkmcp/untracked/APP/static/inspiration.js +345 -13
- cnhkmcp/untracked/APP/templates/index.html +11 -3
- cnhkmcp/untracked/APP/templates/transformer_web.html +1 -1
- cnhkmcp/untracked/APP/trailSomeAlphas/README.md +38 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/ace.log +66 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/enhance_template.py +588 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/requirements.txt +3 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/run_pipeline.py +1001 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/run_pipeline_step_by_step.ipynb +5258 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-data-feature-engineering/OUTPUT_TEMPLATE.md +325 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-data-feature-engineering/SKILL.md +503 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-data-feature-engineering/examples.md +244 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-data-feature-engineering/output_report/ASI_delay1_analyst11_ideas.md +285 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-data-feature-engineering/reference.md +399 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/SKILL.md +40 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/config.json +6 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709385783386000.json +388 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709386274840400.json +131 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709386838244700.json +1926 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709387369198500.json +31 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709387908905800.json +1926 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709388486243600.json +240 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709389024058600.json +1926 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709389549608700.json +41 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709390068714000.json +110 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709390591996900.json +36 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709391129137100.json +31 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709391691643500.json +41 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709392192099200.json +31 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709392703423500.json +46 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709393213729400.json +246 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710186683932500.json +388 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710187165414300.json +131 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710187665211700.json +1926 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710188149193400.json +31 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710188667627400.json +1926 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710189220822000.json +240 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710189726189500.json +1926 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710190248066100.json +41 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710190768298700.json +110 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710191282588100.json +36 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710191838960900.json +31 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710192396688000.json +41 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710192941922400.json +31 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710193473524600.json +46 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710194001961200.json +246 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710420975888800.json +46 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710421647590100.json +196 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710422131378500.json +5 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710422644184400.json +196 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710423702350600.json +196 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710424244661800.json +5 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_delay1.csv +211 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/final_expressions.json +7062 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/ace.log +3 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/ace_lib.py +1514 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/fetch_dataset.py +113 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/helpful_functions.py +180 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/implement_idea.py +236 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/merge_expression_list.py +90 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/parsetab.py +60 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/template_final_enhance/op/321/206/320/220/342/225/227/321/207/342/225/227/320/243.md +434 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/template_final_enhance/sample_prompt.md +62 -0
- cnhkmcp/untracked/APP/trailSomeAlphas/skills/template_final_enhance//321/205/320/235/320/245/321/205/320/253/320/260/321/205/320/275/320/240/321/206/320/220/320/255/321/210/320/220/320/223/321/211/320/220/342/225/227/321/210/342/225/233/320/241/321/211/320/243/342/225/233.md +354 -0
- cnhkmcp/untracked/APP/usage.md +2 -2
- cnhkmcp/untracked/APP//321/210/342/224/220/320/240/321/210/320/261/320/234/321/206/320/231/320/243/321/205/342/225/235/320/220/321/206/320/230/320/241.py +388 -8
- cnhkmcp/untracked/skills/alpha-expression-verifier/scripts/validator.py +889 -0
- cnhkmcp/untracked/skills/brain-data-feature-engineering/OUTPUT_TEMPLATE.md +325 -0
- cnhkmcp/untracked/skills/brain-data-feature-engineering/SKILL.md +263 -0
- cnhkmcp/untracked/skills/brain-data-feature-engineering/examples.md +244 -0
- cnhkmcp/untracked/skills/brain-data-feature-engineering/reference.md +493 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/SKILL.md +87 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/config.json +6 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/analyst15_GLB_delay1.csv +289 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/final_expressions.json +410 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588244.json +4 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588251.json +20 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588273.json +23 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588293.json +23 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588319.json +23 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588322.json +14 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588325.json +20 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588328.json +23 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588354.json +23 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588357.json +23 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588361.json +23 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588364.json +23 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588368.json +23 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588391.json +14 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588394.json +23 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588397.json +59 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588400.json +35 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588403.json +20 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588428.json +23 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588431.json +32 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588434.json +20 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588438.json +20 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588441.json +14 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/data/analyst15_GLB_delay1/idea_1768588468.json +20 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/scripts/ace_lib.py +1514 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/scripts/fetch_dataset.py +107 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/scripts/helpful_functions.py +180 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/scripts/implement_idea.py +165 -0
- cnhkmcp/untracked/skills/brain-feature-implementation/scripts/merge_expression_list.py +88 -0
- cnhkmcp/untracked/skills/brain-improve-alpha-performance/arXiv_API_Tool_Manual.md +490 -0
- cnhkmcp/untracked/skills/brain-improve-alpha-performance/reference.md +1 -1
- cnhkmcp/untracked/skills/brain-improve-alpha-performance/scripts/arxiv_api.py +229 -0
- cnhkmcp/untracked/skills/planning-with-files/SKILL.md +211 -0
- cnhkmcp/untracked/skills/planning-with-files/examples.md +202 -0
- cnhkmcp/untracked/skills/planning-with-files/reference.md +218 -0
- cnhkmcp/untracked/skills/planning-with-files/scripts/check-complete.sh +44 -0
- cnhkmcp/untracked/skills/planning-with-files/scripts/init-session.sh +120 -0
- cnhkmcp/untracked/skills/planning-with-files/templates/findings.md +95 -0
- cnhkmcp/untracked/skills/planning-with-files/templates/progress.md +114 -0
- cnhkmcp/untracked/skills/planning-with-files/templates/task_plan.md +132 -0
- cnhkmcp/untracked//321/211/320/225/320/235/321/207/342/225/234/320/276/321/205/320/231/320/235/321/210/342/224/220/320/240/321/210/320/261/320/234/321/206/320/230/320/241_/321/205/320/276/320/231/321/210/320/263/320/225/321/205/342/224/220/320/225/321/210/320/266/320/221/321/204/342/225/233/320/255/321/210/342/225/241/320/246/321/205/320/234/320/225.py +35 -11
- cnhkmcp/vector_db/_manifest.json +1 -0
- cnhkmcp/vector_db/_meta.json +1 -0
- {cnhkmcp-2.1.9.dist-info → cnhkmcp-2.3.0.dist-info}/METADATA +1 -1
- {cnhkmcp-2.1.9.dist-info → cnhkmcp-2.3.0.dist-info}/RECORD +142 -31
- /cnhkmcp/untracked/{skills/expression_verifier → APP/trailSomeAlphas/skills/brain-feature-implementation}/scripts/validator.py +0 -0
- /cnhkmcp/untracked/skills/{expression_verifier → alpha-expression-verifier}/SKILL.md +0 -0
- /cnhkmcp/untracked/skills/{expression_verifier → alpha-expression-verifier}/scripts/verify_expr.py +0 -0
- {cnhkmcp-2.1.9.dist-info → cnhkmcp-2.3.0.dist-info}/WHEEL +0 -0
- {cnhkmcp-2.1.9.dist-info → cnhkmcp-2.3.0.dist-info}/entry_points.txt +0 -0
- {cnhkmcp-2.1.9.dist-info → cnhkmcp-2.3.0.dist-info}/licenses/LICENSE +0 -0
- {cnhkmcp-2.1.9.dist-info → cnhkmcp-2.3.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
# Reference: Manus Context Engineering Principles
|
|
2
|
+
|
|
3
|
+
This skill is based on context engineering principles from Manus, the AI agent company acquired by Meta for $2 billion in December 2025.
|
|
4
|
+
|
|
5
|
+
## The 6 Manus Principles
|
|
6
|
+
|
|
7
|
+
### Principle 1: Design Around KV-Cache
|
|
8
|
+
|
|
9
|
+
> "KV-cache hit rate is THE single most important metric for production AI agents."
|
|
10
|
+
|
|
11
|
+
**Statistics:**
|
|
12
|
+
- ~100:1 input-to-output token ratio
|
|
13
|
+
- Cached tokens: $0.30/MTok vs Uncached: $3/MTok
|
|
14
|
+
- 10x cost difference!
|
|
15
|
+
|
|
16
|
+
**Implementation:**
|
|
17
|
+
- Keep prompt prefixes STABLE (single-token change invalidates cache)
|
|
18
|
+
- NO timestamps in system prompts
|
|
19
|
+
- Make context APPEND-ONLY with deterministic serialization
|
|
20
|
+
|
|
21
|
+
### Principle 2: Mask, Don't Remove
|
|
22
|
+
|
|
23
|
+
Don't dynamically remove tools (breaks KV-cache). Use logit masking instead.
|
|
24
|
+
|
|
25
|
+
**Best Practice:** Use consistent action prefixes (e.g., `browser_`, `shell_`, `file_`) for easier masking.
|
|
26
|
+
|
|
27
|
+
### Principle 3: Filesystem as External Memory
|
|
28
|
+
|
|
29
|
+
> "Markdown is my 'working memory' on disk."
|
|
30
|
+
|
|
31
|
+
**The Formula:**
|
|
32
|
+
```
|
|
33
|
+
Context Window = RAM (volatile, limited)
|
|
34
|
+
Filesystem = Disk (persistent, unlimited)
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
**Compression Must Be Restorable:**
|
|
38
|
+
- Keep URLs even if web content is dropped
|
|
39
|
+
- Keep file paths when dropping document contents
|
|
40
|
+
- Never lose the pointer to full data
|
|
41
|
+
|
|
42
|
+
### Principle 4: Manipulate Attention Through Recitation
|
|
43
|
+
|
|
44
|
+
> "Creates and updates todo.md throughout tasks to push global plan into model's recent attention span."
|
|
45
|
+
|
|
46
|
+
**Problem:** After ~50 tool calls, models forget original goals ("lost in the middle" effect).
|
|
47
|
+
|
|
48
|
+
**Solution:** Re-read `task_plan.md` before each decision. Goals appear in the attention window.
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
Start of context: [Original goal - far away, forgotten]
|
|
52
|
+
...many tool calls...
|
|
53
|
+
End of context: [Recently read task_plan.md - gets ATTENTION!]
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### Principle 5: Keep the Wrong Stuff In
|
|
57
|
+
|
|
58
|
+
> "Leave the wrong turns in the context."
|
|
59
|
+
|
|
60
|
+
**Why:**
|
|
61
|
+
- Failed actions with stack traces let model implicitly update beliefs
|
|
62
|
+
- Reduces mistake repetition
|
|
63
|
+
- Error recovery is "one of the clearest signals of TRUE agentic behavior"
|
|
64
|
+
|
|
65
|
+
### Principle 6: Don't Get Few-Shotted
|
|
66
|
+
|
|
67
|
+
> "Uniformity breeds fragility."
|
|
68
|
+
|
|
69
|
+
**Problem:** Repetitive action-observation pairs cause drift and hallucination.
|
|
70
|
+
|
|
71
|
+
**Solution:** Introduce controlled variation:
|
|
72
|
+
- Vary phrasings slightly
|
|
73
|
+
- Don't copy-paste patterns blindly
|
|
74
|
+
- Recalibrate on repetitive tasks
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## The 3 Context Engineering Strategies
|
|
79
|
+
|
|
80
|
+
Based on Lance Martin's analysis of Manus architecture.
|
|
81
|
+
|
|
82
|
+
### Strategy 1: Context Reduction
|
|
83
|
+
|
|
84
|
+
**Compaction:**
|
|
85
|
+
```
|
|
86
|
+
Tool calls have TWO representations:
|
|
87
|
+
├── FULL: Raw tool content (stored in filesystem)
|
|
88
|
+
└── COMPACT: Reference/file path only
|
|
89
|
+
|
|
90
|
+
RULES:
|
|
91
|
+
- Apply compaction to STALE (older) tool results
|
|
92
|
+
- Keep RECENT results FULL (to guide next decision)
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
**Summarization:**
|
|
96
|
+
- Applied when compaction reaches diminishing returns
|
|
97
|
+
- Generated using full tool results
|
|
98
|
+
- Creates standardized summary objects
|
|
99
|
+
|
|
100
|
+
### Strategy 2: Context Isolation (Multi-Agent)
|
|
101
|
+
|
|
102
|
+
**Architecture:**
|
|
103
|
+
```
|
|
104
|
+
┌─────────────────────────────────┐
|
|
105
|
+
│ PLANNER AGENT │
|
|
106
|
+
│ └─ Assigns tasks to sub-agents │
|
|
107
|
+
├─────────────────────────────────┤
|
|
108
|
+
│ KNOWLEDGE MANAGER │
|
|
109
|
+
│ └─ Reviews conversations │
|
|
110
|
+
│ └─ Determines filesystem store │
|
|
111
|
+
├─────────────────────────────────┤
|
|
112
|
+
│ EXECUTOR SUB-AGENTS │
|
|
113
|
+
│ └─ Perform assigned tasks │
|
|
114
|
+
│ └─ Have own context windows │
|
|
115
|
+
└─────────────────────────────────┘
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
**Key Insight:** Manus originally used `todo.md` for task planning but found ~33% of actions were spent updating it. Shifted to dedicated planner agent calling executor sub-agents.
|
|
119
|
+
|
|
120
|
+
### Strategy 3: Context Offloading
|
|
121
|
+
|
|
122
|
+
**Tool Design:**
|
|
123
|
+
- Use <20 atomic functions total
|
|
124
|
+
- Store full results in filesystem, not context
|
|
125
|
+
- Use `glob` and `grep` for searching
|
|
126
|
+
- Progressive disclosure: load information only as needed
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
## The Agent Loop
|
|
131
|
+
|
|
132
|
+
Manus operates in a continuous 7-step loop:
|
|
133
|
+
|
|
134
|
+
```
|
|
135
|
+
┌─────────────────────────────────────────┐
|
|
136
|
+
│ 1. ANALYZE CONTEXT │
|
|
137
|
+
│ - Understand user intent │
|
|
138
|
+
│ - Assess current state │
|
|
139
|
+
│ - Review recent observations │
|
|
140
|
+
├─────────────────────────────────────────┤
|
|
141
|
+
│ 2. THINK │
|
|
142
|
+
│ - Should I update the plan? │
|
|
143
|
+
│ - What's the next logical action? │
|
|
144
|
+
│ - Are there blockers? │
|
|
145
|
+
├─────────────────────────────────────────┤
|
|
146
|
+
│ 3. SELECT TOOL │
|
|
147
|
+
│ - Choose ONE tool │
|
|
148
|
+
│ - Ensure parameters available │
|
|
149
|
+
├─────────────────────────────────────────┤
|
|
150
|
+
│ 4. EXECUTE ACTION │
|
|
151
|
+
│ - Tool runs in sandbox │
|
|
152
|
+
├─────────────────────────────────────────┤
|
|
153
|
+
│ 5. RECEIVE OBSERVATION │
|
|
154
|
+
│ - Result appended to context │
|
|
155
|
+
├─────────────────────────────────────────┤
|
|
156
|
+
│ 6. ITERATE │
|
|
157
|
+
│ - Return to step 1 │
|
|
158
|
+
│ - Continue until complete │
|
|
159
|
+
├─────────────────────────────────────────┤
|
|
160
|
+
│ 7. DELIVER OUTCOME │
|
|
161
|
+
│ - Send results to user │
|
|
162
|
+
│ - Attach all relevant files │
|
|
163
|
+
└─────────────────────────────────────────┘
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
## File Types Manus Creates
|
|
169
|
+
|
|
170
|
+
| File | Purpose | When Created | When Updated |
|
|
171
|
+
|------|---------|--------------|--------------|
|
|
172
|
+
| `task_plan.md` | Phase tracking, progress | Task start | After completing phases |
|
|
173
|
+
| `findings.md` | Discoveries, decisions | After ANY discovery | After viewing images/PDFs |
|
|
174
|
+
| `progress.md` | Session log, what's done | At breakpoints | Throughout session |
|
|
175
|
+
| Code files | Implementation | Before execution | After errors |
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
## Critical Constraints
|
|
180
|
+
|
|
181
|
+
- **Single-Action Execution:** ONE tool call per turn. No parallel execution.
|
|
182
|
+
- **Plan is Required:** Agent must ALWAYS know: goal, current phase, remaining phases
|
|
183
|
+
- **Files are Memory:** Context = volatile. Filesystem = persistent.
|
|
184
|
+
- **Never Repeat Failures:** If action failed, next action MUST be different
|
|
185
|
+
- **Communication is a Tool:** Message types: `info` (progress), `ask` (blocking), `result` (terminal)
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## Manus Statistics
|
|
190
|
+
|
|
191
|
+
| Metric | Value |
|
|
192
|
+
|--------|-------|
|
|
193
|
+
| Average tool calls per task | ~50 |
|
|
194
|
+
| Input-to-output token ratio | 100:1 |
|
|
195
|
+
| Acquisition price | $2 billion |
|
|
196
|
+
| Time to $100M revenue | 8 months |
|
|
197
|
+
| Framework refactors since launch | 5 times |
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
## Key Quotes
|
|
202
|
+
|
|
203
|
+
> "Context window = RAM (volatile, limited). Filesystem = Disk (persistent, unlimited). Anything important gets written to disk."
|
|
204
|
+
|
|
205
|
+
> "if action_failed: next_action != same_action. Track what you tried. Mutate the approach."
|
|
206
|
+
|
|
207
|
+
> "Error recovery is one of the clearest signals of TRUE agentic behavior."
|
|
208
|
+
|
|
209
|
+
> "KV-cache hit rate is the single most important metric for a production-stage AI agent."
|
|
210
|
+
|
|
211
|
+
> "Leave the wrong turns in the context."
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
## Source
|
|
216
|
+
|
|
217
|
+
Based on Manus's official context engineering documentation:
|
|
218
|
+
https://manus.im/blog/Context-Engineering-for-AI-Agents-Lessons-from-Building-Manus
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# Check if all phases in task_plan.md are complete
|
|
3
|
+
# Exit 0 if complete, exit 1 if incomplete
|
|
4
|
+
# Used by Stop hook to verify task completion
|
|
5
|
+
|
|
6
|
+
PLAN_FILE="${1:-task_plan.md}"
|
|
7
|
+
|
|
8
|
+
if [ ! -f "$PLAN_FILE" ]; then
|
|
9
|
+
echo "ERROR: $PLAN_FILE not found"
|
|
10
|
+
echo "Cannot verify completion without a task plan."
|
|
11
|
+
exit 1
|
|
12
|
+
fi
|
|
13
|
+
|
|
14
|
+
echo "=== Task Completion Check ==="
|
|
15
|
+
echo ""
|
|
16
|
+
|
|
17
|
+
# Count phases by status (using -F for fixed string matching)
|
|
18
|
+
TOTAL=$(grep -c "### Phase" "$PLAN_FILE" || true)
|
|
19
|
+
COMPLETE=$(grep -cF "**Status:** complete" "$PLAN_FILE" || true)
|
|
20
|
+
IN_PROGRESS=$(grep -cF "**Status:** in_progress" "$PLAN_FILE" || true)
|
|
21
|
+
PENDING=$(grep -cF "**Status:** pending" "$PLAN_FILE" || true)
|
|
22
|
+
|
|
23
|
+
# Default to 0 if empty
|
|
24
|
+
: "${TOTAL:=0}"
|
|
25
|
+
: "${COMPLETE:=0}"
|
|
26
|
+
: "${IN_PROGRESS:=0}"
|
|
27
|
+
: "${PENDING:=0}"
|
|
28
|
+
|
|
29
|
+
echo "Total phases: $TOTAL"
|
|
30
|
+
echo "Complete: $COMPLETE"
|
|
31
|
+
echo "In progress: $IN_PROGRESS"
|
|
32
|
+
echo "Pending: $PENDING"
|
|
33
|
+
echo ""
|
|
34
|
+
|
|
35
|
+
# Check completion
|
|
36
|
+
if [ "$COMPLETE" -eq "$TOTAL" ] && [ "$TOTAL" -gt 0 ]; then
|
|
37
|
+
echo "ALL PHASES COMPLETE"
|
|
38
|
+
exit 0
|
|
39
|
+
else
|
|
40
|
+
echo "TASK NOT COMPLETE"
|
|
41
|
+
echo ""
|
|
42
|
+
echo "Do not stop until all phases are complete."
|
|
43
|
+
exit 1
|
|
44
|
+
fi
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# Initialize planning files for a new session
|
|
3
|
+
# Usage: ./init-session.sh [project-name]
|
|
4
|
+
|
|
5
|
+
set -e
|
|
6
|
+
|
|
7
|
+
PROJECT_NAME="${1:-project}"
|
|
8
|
+
DATE=$(date +%Y-%m-%d)
|
|
9
|
+
|
|
10
|
+
echo "Initializing planning files for: $PROJECT_NAME"
|
|
11
|
+
|
|
12
|
+
# Create task_plan.md if it doesn't exist
|
|
13
|
+
if [ ! -f "task_plan.md" ]; then
|
|
14
|
+
cat > task_plan.md << 'EOF'
|
|
15
|
+
# Task Plan: [Brief Description]
|
|
16
|
+
|
|
17
|
+
## Goal
|
|
18
|
+
[One sentence describing the end state]
|
|
19
|
+
|
|
20
|
+
## Current Phase
|
|
21
|
+
Phase 1
|
|
22
|
+
|
|
23
|
+
## Phases
|
|
24
|
+
|
|
25
|
+
### Phase 1: Requirements & Discovery
|
|
26
|
+
- [ ] Understand user intent
|
|
27
|
+
- [ ] Identify constraints
|
|
28
|
+
- [ ] Document in findings.md
|
|
29
|
+
- **Status:** in_progress
|
|
30
|
+
|
|
31
|
+
### Phase 2: Planning & Structure
|
|
32
|
+
- [ ] Define approach
|
|
33
|
+
- [ ] Create project structure
|
|
34
|
+
- **Status:** pending
|
|
35
|
+
|
|
36
|
+
### Phase 3: Implementation
|
|
37
|
+
- [ ] Execute the plan
|
|
38
|
+
- [ ] Write to files before executing
|
|
39
|
+
- **Status:** pending
|
|
40
|
+
|
|
41
|
+
### Phase 4: Testing & Verification
|
|
42
|
+
- [ ] Verify requirements met
|
|
43
|
+
- [ ] Document test results
|
|
44
|
+
- **Status:** pending
|
|
45
|
+
|
|
46
|
+
### Phase 5: Delivery
|
|
47
|
+
- [ ] Review outputs
|
|
48
|
+
- [ ] Deliver to user
|
|
49
|
+
- **Status:** pending
|
|
50
|
+
|
|
51
|
+
## Decisions Made
|
|
52
|
+
| Decision | Rationale |
|
|
53
|
+
|----------|-----------|
|
|
54
|
+
|
|
55
|
+
## Errors Encountered
|
|
56
|
+
| Error | Resolution |
|
|
57
|
+
|-------|------------|
|
|
58
|
+
EOF
|
|
59
|
+
echo "Created task_plan.md"
|
|
60
|
+
else
|
|
61
|
+
echo "task_plan.md already exists, skipping"
|
|
62
|
+
fi
|
|
63
|
+
|
|
64
|
+
# Create findings.md if it doesn't exist
|
|
65
|
+
if [ ! -f "findings.md" ]; then
|
|
66
|
+
cat > findings.md << 'EOF'
|
|
67
|
+
# Findings & Decisions
|
|
68
|
+
|
|
69
|
+
## Requirements
|
|
70
|
+
-
|
|
71
|
+
|
|
72
|
+
## Research Findings
|
|
73
|
+
-
|
|
74
|
+
|
|
75
|
+
## Technical Decisions
|
|
76
|
+
| Decision | Rationale |
|
|
77
|
+
|----------|-----------|
|
|
78
|
+
|
|
79
|
+
## Issues Encountered
|
|
80
|
+
| Issue | Resolution |
|
|
81
|
+
|-------|------------|
|
|
82
|
+
|
|
83
|
+
## Resources
|
|
84
|
+
-
|
|
85
|
+
EOF
|
|
86
|
+
echo "Created findings.md"
|
|
87
|
+
else
|
|
88
|
+
echo "findings.md already exists, skipping"
|
|
89
|
+
fi
|
|
90
|
+
|
|
91
|
+
# Create progress.md if it doesn't exist
|
|
92
|
+
if [ ! -f "progress.md" ]; then
|
|
93
|
+
cat > progress.md << EOF
|
|
94
|
+
# Progress Log
|
|
95
|
+
|
|
96
|
+
## Session: $DATE
|
|
97
|
+
|
|
98
|
+
### Current Status
|
|
99
|
+
- **Phase:** 1 - Requirements & Discovery
|
|
100
|
+
- **Started:** $DATE
|
|
101
|
+
|
|
102
|
+
### Actions Taken
|
|
103
|
+
-
|
|
104
|
+
|
|
105
|
+
### Test Results
|
|
106
|
+
| Test | Expected | Actual | Status |
|
|
107
|
+
|------|----------|--------|--------|
|
|
108
|
+
|
|
109
|
+
### Errors
|
|
110
|
+
| Error | Resolution |
|
|
111
|
+
|-------|------------|
|
|
112
|
+
EOF
|
|
113
|
+
echo "Created progress.md"
|
|
114
|
+
else
|
|
115
|
+
echo "progress.md already exists, skipping"
|
|
116
|
+
fi
|
|
117
|
+
|
|
118
|
+
echo ""
|
|
119
|
+
echo "Planning files initialized!"
|
|
120
|
+
echo "Files: task_plan.md, findings.md, progress.md"
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# Findings & Decisions
|
|
2
|
+
<!--
|
|
3
|
+
WHAT: Your knowledge base for the task. Stores everything you discover and decide.
|
|
4
|
+
WHY: Context windows are limited. This file is your "external memory" - persistent and unlimited.
|
|
5
|
+
WHEN: Update after ANY discovery, especially after 2 view/browser/search operations (2-Action Rule).
|
|
6
|
+
-->
|
|
7
|
+
|
|
8
|
+
## Requirements
|
|
9
|
+
<!--
|
|
10
|
+
WHAT: What the user asked for, broken down into specific requirements.
|
|
11
|
+
WHY: Keeps requirements visible so you don't forget what you're building.
|
|
12
|
+
WHEN: Fill this in during Phase 1 (Requirements & Discovery).
|
|
13
|
+
EXAMPLE:
|
|
14
|
+
- Command-line interface
|
|
15
|
+
- Add tasks
|
|
16
|
+
- List all tasks
|
|
17
|
+
- Delete tasks
|
|
18
|
+
- Python implementation
|
|
19
|
+
-->
|
|
20
|
+
<!-- Captured from user request -->
|
|
21
|
+
-
|
|
22
|
+
|
|
23
|
+
## Research Findings
|
|
24
|
+
<!--
|
|
25
|
+
WHAT: Key discoveries from web searches, documentation reading, or exploration.
|
|
26
|
+
WHY: Multimodal content (images, browser results) doesn't persist. Write it down immediately.
|
|
27
|
+
WHEN: After EVERY 2 view/browser/search operations, update this section (2-Action Rule).
|
|
28
|
+
EXAMPLE:
|
|
29
|
+
- Python's argparse module supports subcommands for clean CLI design
|
|
30
|
+
- JSON module handles file persistence easily
|
|
31
|
+
- Standard pattern: python script.py <command> [args]
|
|
32
|
+
-->
|
|
33
|
+
<!-- Key discoveries during exploration -->
|
|
34
|
+
-
|
|
35
|
+
|
|
36
|
+
## Technical Decisions
|
|
37
|
+
<!--
|
|
38
|
+
WHAT: Architecture and implementation choices you've made, with reasoning.
|
|
39
|
+
WHY: You'll forget why you chose a technology or approach. This table preserves that knowledge.
|
|
40
|
+
WHEN: Update whenever you make a significant technical choice.
|
|
41
|
+
EXAMPLE:
|
|
42
|
+
| Use JSON for storage | Simple, human-readable, built-in Python support |
|
|
43
|
+
| argparse with subcommands | Clean CLI: python todo.py add "task" |
|
|
44
|
+
-->
|
|
45
|
+
<!-- Decisions made with rationale -->
|
|
46
|
+
| Decision | Rationale |
|
|
47
|
+
|----------|-----------|
|
|
48
|
+
| | |
|
|
49
|
+
|
|
50
|
+
## Issues Encountered
|
|
51
|
+
<!--
|
|
52
|
+
WHAT: Problems you ran into and how you solved them.
|
|
53
|
+
WHY: Similar to errors in task_plan.md, but focused on broader issues (not just code errors).
|
|
54
|
+
WHEN: Document when you encounter blockers or unexpected challenges.
|
|
55
|
+
EXAMPLE:
|
|
56
|
+
| Empty file causes JSONDecodeError | Added explicit empty file check before json.load() |
|
|
57
|
+
-->
|
|
58
|
+
<!-- Errors and how they were resolved -->
|
|
59
|
+
| Issue | Resolution |
|
|
60
|
+
|-------|------------|
|
|
61
|
+
| | |
|
|
62
|
+
|
|
63
|
+
## Resources
|
|
64
|
+
<!--
|
|
65
|
+
WHAT: URLs, file paths, API references, documentation links you've found useful.
|
|
66
|
+
WHY: Easy reference for later. Don't lose important links in context.
|
|
67
|
+
WHEN: Add as you discover useful resources.
|
|
68
|
+
EXAMPLE:
|
|
69
|
+
- Python argparse docs: https://docs.python.org/3/library/argparse.html
|
|
70
|
+
- Project structure: src/main.py, src/utils.py
|
|
71
|
+
-->
|
|
72
|
+
<!-- URLs, file paths, API references -->
|
|
73
|
+
-
|
|
74
|
+
|
|
75
|
+
## Visual/Browser Findings
|
|
76
|
+
<!--
|
|
77
|
+
WHAT: Information you learned from viewing images, PDFs, or browser results.
|
|
78
|
+
WHY: CRITICAL - Visual/multimodal content doesn't persist in context. Must be captured as text.
|
|
79
|
+
WHEN: IMMEDIATELY after viewing images or browser results. Don't wait!
|
|
80
|
+
EXAMPLE:
|
|
81
|
+
- Screenshot shows login form has email and password fields
|
|
82
|
+
- Browser shows API returns JSON with "status" and "data" keys
|
|
83
|
+
-->
|
|
84
|
+
<!-- CRITICAL: Update after every 2 view/browser operations -->
|
|
85
|
+
<!-- Multimodal content must be captured as text immediately -->
|
|
86
|
+
-
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
<!--
|
|
90
|
+
REMINDER: The 2-Action Rule
|
|
91
|
+
After every 2 view/browser/search operations, you MUST update this file.
|
|
92
|
+
This prevents visual information from being lost when context resets.
|
|
93
|
+
-->
|
|
94
|
+
*Update this file after every 2 view/browser/search operations*
|
|
95
|
+
*This prevents visual information from being lost*
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
# Progress Log
|
|
2
|
+
<!--
|
|
3
|
+
WHAT: Your session log - a chronological record of what you did, when, and what happened.
|
|
4
|
+
WHY: Answers "What have I done?" in the 5-Question Reboot Test. Helps you resume after breaks.
|
|
5
|
+
WHEN: Update after completing each phase or encountering errors. More detailed than task_plan.md.
|
|
6
|
+
-->
|
|
7
|
+
|
|
8
|
+
## Session: [DATE]
|
|
9
|
+
<!--
|
|
10
|
+
WHAT: The date of this work session.
|
|
11
|
+
WHY: Helps track when work happened, useful for resuming after time gaps.
|
|
12
|
+
EXAMPLE: 2026-01-15
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
### Phase 1: [Title]
|
|
16
|
+
<!--
|
|
17
|
+
WHAT: Detailed log of actions taken during this phase.
|
|
18
|
+
WHY: Provides context for what was done, making it easier to resume or debug.
|
|
19
|
+
WHEN: Update as you work through the phase, or at least when you complete it.
|
|
20
|
+
-->
|
|
21
|
+
- **Status:** in_progress
|
|
22
|
+
- **Started:** [timestamp]
|
|
23
|
+
<!--
|
|
24
|
+
STATUS: Same as task_plan.md (pending, in_progress, complete)
|
|
25
|
+
TIMESTAMP: When you started this phase (e.g., "2026-01-15 10:00")
|
|
26
|
+
-->
|
|
27
|
+
- Actions taken:
|
|
28
|
+
<!--
|
|
29
|
+
WHAT: List of specific actions you performed.
|
|
30
|
+
EXAMPLE:
|
|
31
|
+
- Created todo.py with basic structure
|
|
32
|
+
- Implemented add functionality
|
|
33
|
+
- Fixed FileNotFoundError
|
|
34
|
+
-->
|
|
35
|
+
-
|
|
36
|
+
- Files created/modified:
|
|
37
|
+
<!--
|
|
38
|
+
WHAT: Which files you created or changed.
|
|
39
|
+
WHY: Quick reference for what was touched. Helps with debugging and review.
|
|
40
|
+
EXAMPLE:
|
|
41
|
+
- todo.py (created)
|
|
42
|
+
- todos.json (created by app)
|
|
43
|
+
- task_plan.md (updated)
|
|
44
|
+
-->
|
|
45
|
+
-
|
|
46
|
+
|
|
47
|
+
### Phase 2: [Title]
|
|
48
|
+
<!--
|
|
49
|
+
WHAT: Same structure as Phase 1, for the next phase.
|
|
50
|
+
WHY: Keep a separate log entry for each phase to track progress clearly.
|
|
51
|
+
-->
|
|
52
|
+
- **Status:** pending
|
|
53
|
+
- Actions taken:
|
|
54
|
+
-
|
|
55
|
+
- Files created/modified:
|
|
56
|
+
-
|
|
57
|
+
|
|
58
|
+
## Test Results
|
|
59
|
+
<!--
|
|
60
|
+
WHAT: Table of tests you ran, what you expected, what actually happened.
|
|
61
|
+
WHY: Documents verification of functionality. Helps catch regressions.
|
|
62
|
+
WHEN: Update as you test features, especially during Phase 4 (Testing & Verification).
|
|
63
|
+
EXAMPLE:
|
|
64
|
+
| Add task | python todo.py add "Buy milk" | Task added | Task added successfully | ✓ |
|
|
65
|
+
| List tasks | python todo.py list | Shows all tasks | Shows all tasks | ✓ |
|
|
66
|
+
-->
|
|
67
|
+
| Test | Input | Expected | Actual | Status |
|
|
68
|
+
|------|-------|----------|--------|--------|
|
|
69
|
+
| | | | | |
|
|
70
|
+
|
|
71
|
+
## Error Log
|
|
72
|
+
<!--
|
|
73
|
+
WHAT: Detailed log of every error encountered, with timestamps and resolution attempts.
|
|
74
|
+
WHY: More detailed than task_plan.md's error table. Helps you learn from mistakes.
|
|
75
|
+
WHEN: Add immediately when an error occurs, even if you fix it quickly.
|
|
76
|
+
EXAMPLE:
|
|
77
|
+
| 2026-01-15 10:35 | FileNotFoundError | 1 | Added file existence check |
|
|
78
|
+
| 2026-01-15 10:37 | JSONDecodeError | 2 | Added empty file handling |
|
|
79
|
+
-->
|
|
80
|
+
<!-- Keep ALL errors - they help avoid repetition -->
|
|
81
|
+
| Timestamp | Error | Attempt | Resolution |
|
|
82
|
+
|-----------|-------|---------|------------|
|
|
83
|
+
| | | 1 | |
|
|
84
|
+
|
|
85
|
+
## 5-Question Reboot Check
|
|
86
|
+
<!--
|
|
87
|
+
WHAT: Five questions that verify your context is solid. If you can answer these, you're on track.
|
|
88
|
+
WHY: This is the "reboot test" - if you can answer all 5, you can resume work effectively.
|
|
89
|
+
WHEN: Update periodically, especially when resuming after a break or context reset.
|
|
90
|
+
|
|
91
|
+
THE 5 QUESTIONS:
|
|
92
|
+
1. Where am I? → Current phase in task_plan.md
|
|
93
|
+
2. Where am I going? → Remaining phases
|
|
94
|
+
3. What's the goal? → Goal statement in task_plan.md
|
|
95
|
+
4. What have I learned? → See findings.md
|
|
96
|
+
5. What have I done? → See progress.md (this file)
|
|
97
|
+
-->
|
|
98
|
+
<!-- If you can answer these, context is solid -->
|
|
99
|
+
| Question | Answer |
|
|
100
|
+
|----------|--------|
|
|
101
|
+
| Where am I? | Phase X |
|
|
102
|
+
| Where am I going? | Remaining phases |
|
|
103
|
+
| What's the goal? | [goal statement] |
|
|
104
|
+
| What have I learned? | See findings.md |
|
|
105
|
+
| What have I done? | See above |
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
<!--
|
|
109
|
+
REMINDER:
|
|
110
|
+
- Update after completing each phase or encountering errors
|
|
111
|
+
- Be detailed - this is your "what happened" log
|
|
112
|
+
- Include timestamps for errors to track when issues occurred
|
|
113
|
+
-->
|
|
114
|
+
*Update after completing each phase or encountering errors*
|