@pencil-agent/nano-pencil 2.0.0 → 2.0.1
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 +267 -267
- package/dist/build-meta.json +3 -3
- package/dist/core/export-html/AGENT.md +11 -11
- package/dist/core/export-html/template.css +971 -971
- package/dist/core/export-html/template.html +54 -54
- package/dist/core/mcp/mcp-client.d.ts +3 -1
- package/dist/core/mcp/mcp-client.js +6 -6
- package/dist/core/mcp/mcp-config.d.ts +3 -3
- package/dist/core/mcp/mcp-config.js +1 -1
- package/dist/core/mcp/mcp-manager.d.ts +5 -1
- package/dist/core/mcp/mcp-manager.js +1 -1
- package/dist/core/platform/config/resource-loader.d.ts +2 -0
- package/dist/core/platform/config/resource-loader.js +2 -2
- package/dist/core/runtime/agent-session.d.ts +12 -0
- package/dist/core/runtime/agent-session.js +8 -8
- package/dist/core/runtime/sdk.d.ts +8 -0
- package/dist/core/runtime/sdk.js +1 -1
- package/dist/extensions/builtin/AGENT.md +115 -115
- package/dist/extensions/builtin/browser/AGENT.md +17 -17
- package/dist/extensions/builtin/browser/agent-workspace/agent_helpers.py +12 -12
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/amazon/product-search.md +198 -198
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/archive-org/scraping.md +341 -341
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/arxiv/scraping.md +311 -311
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/arxiv-bulk/scraping.md +333 -333
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/atlas/overview.md +70 -70
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/booking-com/scraping.md +578 -578
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/capterra/scraping.md +440 -440
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/centilebrain/generate-estimates.md +110 -110
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/coingecko/scraping.md +325 -325
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/coinmarketcap/scraping.md +463 -463
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/coursera/scraping.md +360 -360
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/craigslist/scraping.md +390 -390
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/crossref/scraping.md +568 -568
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/dev-to/scraping.md +323 -323
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/duckduckgo/scraping.md +349 -349
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/ebay/scraping.md +435 -435
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/etsy/scraping.md +506 -506
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/eventbrite/scraping.md +363 -363
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/expedia/automation.md +168 -168
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/facebook/groups.md +236 -236
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/facebook/pages.md +295 -295
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/framer/editor.md +108 -108
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/fred/scraping.md +493 -493
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/g2/scraping.md +580 -580
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/genius/scraping.md +511 -511
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/github/repo-actions.md +65 -65
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/github/scraping.md +184 -184
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/glassdoor/scraping.md +543 -543
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/gmail/compose.md +122 -122
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/goodreads/scraping.md +461 -461
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/gutenberg/scraping.md +383 -383
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/hackernews/scraping.md +243 -243
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/howlongtobeat/scraping.md +473 -473
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/imdb/scraping.md +271 -271
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/itch-io/scraping.md +436 -436
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/job-boards/indeed-glassdoor.md +1021 -1021
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/letterboxd/scraping.md +349 -349
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/linkedin/invitation-manager.md +109 -109
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/loom/folder-enumeration.md +170 -170
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/macrotrends/scraping.md +537 -537
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/medium/article-hydration.md +120 -120
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/medium/scraping.md +414 -414
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/metacritic/scraping.md +477 -477
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/musicbrainz/scraping.md +478 -478
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/nasa/scraping.md +339 -339
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/news-aggregation/multi-source.md +205 -205
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/open-library/scraping.md +472 -472
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/openalex/scraping.md +470 -470
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/openstreetmap/scraping.md +490 -490
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/package-registries/npm-pypi.md +478 -478
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/polymarket/scraping.md +234 -234
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/producthunt/scraping.md +307 -307
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/pubmed/scraping.md +421 -421
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/quora/scraping.md +364 -364
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/rawg/scraping.md +352 -352
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/reddit/scraping.md +124 -124
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/rest-countries/scraping.md +233 -233
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/sec-edgar/scraping.md +361 -361
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/shopify-admin/README.md +36 -36
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/shopify-admin/embedded-apps.md +72 -72
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/shopify-admin/knowledge-base.md +109 -109
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/shopify-admin/polaris-inputs.md +137 -137
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/soundcloud/scraping.md +362 -362
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/spotify/scraping.md +339 -339
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/stackoverflow/scraping.md +435 -435
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/steam/scraping.md +575 -575
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/substack/scraping.md +338 -338
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/thetechgeeks/pricing.md +52 -52
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/tiktok/upload.md +107 -107
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/tradingview/scraping.md +309 -309
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/trello/boards-and-lists.md +88 -88
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/trustpilot/scraping.md +375 -375
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/walmart/scraping.md +444 -444
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/wayback-machine/scraping.md +306 -306
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/weather/scraping.md +398 -398
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/wellfound/scraping.md +596 -596
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/world-bank/scraping.md +356 -356
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/xiaohongshu/scraping.md +84 -84
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/youtube/scraping.md +418 -418
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/zillow/scraping.md +433 -433
- package/dist/extensions/builtin/browser/browser.md +73 -73
- package/dist/extensions/builtin/browser/install.md +142 -142
- package/dist/extensions/builtin/browser/interaction-skills/connection.md +48 -48
- package/dist/extensions/builtin/browser/interaction-skills/cookies.md +3 -3
- package/dist/extensions/builtin/browser/interaction-skills/cross-origin-iframes.md +3 -3
- package/dist/extensions/builtin/browser/interaction-skills/dialogs.md +64 -64
- package/dist/extensions/builtin/browser/interaction-skills/downloads.md +3 -3
- package/dist/extensions/builtin/browser/interaction-skills/drag-and-drop.md +3 -3
- package/dist/extensions/builtin/browser/interaction-skills/dropdowns.md +3 -3
- package/dist/extensions/builtin/browser/interaction-skills/iframes.md +3 -3
- package/dist/extensions/builtin/browser/interaction-skills/network-requests.md +3 -3
- package/dist/extensions/builtin/browser/interaction-skills/print-as-pdf.md +3 -3
- package/dist/extensions/builtin/browser/interaction-skills/profile-sync.md +90 -90
- package/dist/extensions/builtin/browser/interaction-skills/screenshots.md +17 -17
- package/dist/extensions/builtin/browser/interaction-skills/scrolling.md +3 -3
- package/dist/extensions/builtin/browser/interaction-skills/shadow-dom.md +3 -3
- package/dist/extensions/builtin/browser/interaction-skills/tabs.md +69 -69
- package/dist/extensions/builtin/browser/interaction-skills/uploads.md +1 -1
- package/dist/extensions/builtin/browser/interaction-skills/viewport.md +3 -3
- package/dist/extensions/builtin/browser/src/browser_harness/AGENT.md +15 -15
- package/dist/extensions/builtin/browser/src/browser_harness/__init__.py +8 -8
- package/dist/extensions/builtin/browser/src/browser_harness/_ipc.py +90 -90
- package/dist/extensions/builtin/browser/src/browser_harness/admin.py +722 -722
- package/dist/extensions/builtin/browser/src/browser_harness/daemon.py +328 -328
- package/dist/extensions/builtin/browser/src/browser_harness/helpers.py +396 -396
- package/dist/extensions/builtin/browser/src/browser_harness/run.py +103 -103
- package/dist/extensions/builtin/discipline/skills/brainstorming/SKILL.md +33 -33
- package/dist/extensions/builtin/discipline/skills/executing-plans/SKILL.md +25 -25
- package/dist/extensions/builtin/discipline/skills/finishing-development-branch/SKILL.md +25 -25
- package/dist/extensions/builtin/discipline/skills/receiving-code-review/SKILL.md +22 -22
- package/dist/extensions/builtin/discipline/skills/requesting-code-review/SKILL.md +31 -31
- package/dist/extensions/builtin/discipline/skills/systematic-debugging/SKILL.md +28 -28
- package/dist/extensions/builtin/discipline/skills/test-driven-development/SKILL.md +32 -32
- package/dist/extensions/builtin/discipline/skills/using-git-worktrees/SKILL.md +25 -25
- package/dist/extensions/builtin/discipline/skills/verification-before-completion/SKILL.md +27 -27
- package/dist/extensions/builtin/discipline/skills/writing-plans/SKILL.md +26 -26
- package/dist/extensions/builtin/goal/README.md +67 -67
- package/dist/extensions/builtin/grub/README.md +112 -112
- package/dist/extensions/builtin/link-world/agent-workspace/README.md +16 -16
- package/dist/extensions/builtin/link-world/internet-search/internet-search.md +65 -65
- package/dist/extensions/builtin/link-world/link-world-agent.md +82 -82
- package/dist/extensions/builtin/link-world/linkworld.md +313 -313
- package/dist/extensions/builtin/link-world/network-routing/network-routing.md +67 -67
- package/dist/extensions/builtin/loop/README.md +92 -92
- package/dist/extensions/builtin/mcp/figma-design.md +68 -68
- package/dist/extensions/builtin/mcp/mcp-management.md +85 -85
- package/dist/extensions/builtin/recap/AGENT.md +15 -15
- package/dist/extensions/builtin/sal/README.md +72 -72
- package/dist/extensions/builtin/security-audit/README.md +289 -289
- package/dist/extensions/builtin/team/AGENT.md +112 -112
- package/dist/extensions/builtin/team/TESTING.md +299 -299
- package/dist/extensions/builtin/token-save/README.md +56 -56
- package/dist/extensions/optional/AGENT.md +10 -10
- package/dist/modes/interactive/interactive-mode.js +36 -36
- package/dist/modes/interactive/theme/dark.json +85 -85
- package/dist/modes/interactive/theme/light.json +84 -84
- package/dist/modes/interactive/theme/theme-schema.json +335 -335
- package/dist/modes/interactive/theme/warm.json +81 -81
- package/dist/node_modules/@pencil-agent/agent-core/dist/agent-loop.js +3 -2
- package/dist/node_modules/@pencil-agent/agent-core/dist/structured-adaptive-agent-loop.js +2 -1
- package/dist/node_modules/@pencil-agent/ai/dist/cli.js +0 -0
- package/docs/cc-agent-design.md +1297 -0
- package/docs/cc-tui-design.md +1333 -0
- package/docs/codex-goal-command-impl.md +1055 -1055
- package/docs/codex-goal-vs-grub.md +500 -500
- package/docs/custom-provider.md +27 -27
- package/docs/extensions.md +27 -27
- package/docs/keybindings.md +27 -27
- package/docs/loop /351/207/215/346/236/204/345/256/214/346/210/220/346/200/273/347/273/223.md" +250 -250
- package/docs/loop /351/207/215/346/236/204/345/256/214/346/210/220/346/212/245/345/221/212.md" +122 -122
- package/docs/loop /351/207/215/346/236/204/346/226/271/346/241/210.md" +1222 -1222
- package/docs/loop /351/207/215/346/236/204/346/226/271/346/241/210/345/256/236/347/216/260/346/212/245/345/221/212.md" +158 -158
- package/docs/loop /351/207/215/346/236/204/346/226/271/346/241/210/345/257/271/346/257/224/345/210/206/346/236/220.md" +128 -128
- package/docs/loop /351/207/215/346/236/204/350/256/241/345/210/222.md" +320 -320
- package/docs/loop-usage-examples.md +214 -214
- package/docs/models.md +27 -27
- package/docs/nanoPencil-/345/255/246/344/271/240/350/256/241/345/210/222.md +170 -0
- package/docs/packages.md +27 -27
- package/docs/pi-design-philosophy.md +457 -457
- package/docs/planmode.md +1987 -1987
- package/docs/prompt-templates.md +27 -27
- package/docs/providers.md +27 -27
- package/docs/scan-report.md +3820 -0
- package/docs/sdk.md +27 -27
- package/docs/skills.md +27 -27
- package/docs/themes.md +27 -27
- package/docs/tui.md +27 -27
- package/docs//345/257/271/346/240/207Claude-Code.md +1775 -0
- package/docs//351/230/277/351/207/214/345/267/264/345/267/264/350/264/242/346/212/245/345/210/206/346/236/220/344/271/246.md +261 -0
- package/package.json +190 -190
- package/docs/ACP/345/215/217/350/256/256/351/233/206/346/210/220/345/274/200/345/217/221/346/226/207/346/241/243.md +0 -851
- package/docs/SDK-TESTING.md +0 -364
- package/docs/mem-core/346/212/200/346/234/257/346/226/207/346/241/243.md +0 -593
- package/docs/startup-performance-optimization.md +0 -301
- package/docs//350/256/244/347/237/245/345/234/260/345/233/276.md +0 -47
|
@@ -1,215 +1,215 @@
|
|
|
1
|
-
# Loop Extension Usage Examples
|
|
2
|
-
|
|
3
|
-
## Basic Usage
|
|
4
|
-
|
|
5
|
-
### Session-Scoped Loops (Default)
|
|
6
|
-
|
|
7
|
-
Session-scoped loops are cleared when you close the session.
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
# Check the build every 10 minutes (default)
|
|
11
|
-
/loop check the build
|
|
12
|
-
|
|
13
|
-
# Run a command every 5 minutes
|
|
14
|
-
/loop 5m /grub status
|
|
15
|
-
|
|
16
|
-
# Check PR reviews every 20 minutes
|
|
17
|
-
/loop every 20m Review test failures
|
|
18
|
-
|
|
19
|
-
# Remind to drink water every 30 minutes
|
|
20
|
-
/loop Drink water every 30m --name hydrate --max 8 --quiet
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
### Durable Loops (Persistent Across Sessions)
|
|
24
|
-
|
|
25
|
-
Durable loops are saved to `.nanopencil/loop-tasks.json` and resume when you reopen the project.
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
# Monitor build status every 5 minutes, persists across sessions
|
|
29
|
-
/loop Check build status every 5m --durable
|
|
30
|
-
|
|
31
|
-
# Check for new commits every hour
|
|
32
|
-
/loop 1h Check for new commits --durable
|
|
33
|
-
|
|
34
|
-
# Daily status check at 9 AM
|
|
35
|
-
/loop Daily status check --durable --name daily-check
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
## Managing Loops
|
|
39
|
-
|
|
40
|
-
### List All Loops
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
/loop list
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
Output:
|
|
47
|
-
```
|
|
48
|
-
[Loop] 3 scheduled tasks:
|
|
49
|
-
- build-monitor (abc123) every 5m next in 3m [durable] Check build status
|
|
50
|
-
- hydrate (def456) every 30m next in 15m [quiet, max 2/8] Drink water every 30m
|
|
51
|
-
- ghi789 every 10m next in 8m /grub status
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
### Get Loop Status
|
|
55
|
-
|
|
56
|
-
```bash
|
|
57
|
-
/loop status build-monitor
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
Output:
|
|
61
|
-
```
|
|
62
|
-
[Loop] build-monitor (abc123) — scheduled
|
|
63
|
-
Every: 5m
|
|
64
|
-
Kind: prompt (durable)
|
|
65
|
-
Next run: Sat Apr 18 2025 01:05:00 GMT+0800 (in 3m)
|
|
66
|
-
Last run: Sat Apr 18 2025 01:00:00 GMT+0800
|
|
67
|
-
Run count: 5
|
|
68
|
-
Input: Check build status
|
|
69
|
-
Last output: Build is green
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
### Pause and Resume
|
|
73
|
-
|
|
74
|
-
```bash
|
|
75
|
-
/loop pause build-monitor
|
|
76
|
-
/loop resume build-monitor
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
### Run Immediately
|
|
80
|
-
|
|
81
|
-
```bash
|
|
82
|
-
/loop run build-monitor
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
### Cancel a Loop
|
|
86
|
-
|
|
87
|
-
```bash
|
|
88
|
-
/loop cancel build-monitor
|
|
89
|
-
# or by ID
|
|
90
|
-
/loop cancel abc123
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### Clear All Loops
|
|
94
|
-
|
|
95
|
-
```bash
|
|
96
|
-
/loop clear
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
## Advanced Features
|
|
100
|
-
|
|
101
|
-
### Named Loops
|
|
102
|
-
|
|
103
|
-
```bash
|
|
104
|
-
/loop Check build every 5m --name build-monitor
|
|
105
|
-
/loop pause build-monitor
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
### Maximum Runs
|
|
109
|
-
|
|
110
|
-
```bash
|
|
111
|
-
/loop Drink water every 30m --name hydrate --max 8 --quiet
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
### Quiet Mode
|
|
115
|
-
|
|
116
|
-
Suppresses per-tick UI messages (errors and terminal events still surface):
|
|
117
|
-
|
|
118
|
-
```bash
|
|
119
|
-
/loop 5m Check system status --quiet
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
### Combining Flags
|
|
123
|
-
|
|
124
|
-
```bash
|
|
125
|
-
/loop Check build every 5m --name build-monitor --durable --quiet
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
## Durable vs Session-Scoped Loops
|
|
129
|
-
|
|
130
|
-
| Feature | Session-Scoped | Durable |
|
|
131
|
-
|---------|---------------|---------|
|
|
132
|
-
| Persistence | Lost when session closes | Saved to disk |
|
|
133
|
-
| Multi-process safety | N/A (per-process) | Protected by lock |
|
|
134
|
-
| Use case | Temporary tasks | Long-running monitoring |
|
|
135
|
-
| Storage | In-memory | `.nanopencil/loop-tasks.json` |
|
|
136
|
-
|
|
137
|
-
## Real-World Examples
|
|
138
|
-
|
|
139
|
-
### Development Workflow
|
|
140
|
-
|
|
141
|
-
```bash
|
|
142
|
-
# Monitor build status while developing
|
|
143
|
-
/loop npm run build --name build-check
|
|
144
|
-
|
|
145
|
-
# Run tests every time you save
|
|
146
|
-
/loop npm test --name test-checker --quiet
|
|
147
|
-
|
|
148
|
-
# Check for linting errors
|
|
149
|
-
/loop npm run lint --name linter --durable
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
### Project Monitoring
|
|
153
|
-
|
|
154
|
-
```bash
|
|
155
|
-
# Check for new git commits
|
|
156
|
-
/loop git pull --name git-update --durable
|
|
157
|
-
|
|
158
|
-
# Monitor dependencies
|
|
159
|
-
/loop npm outdated --name deps-check --durable
|
|
160
|
-
|
|
161
|
-
# Check server health
|
|
162
|
-
/loop curl http://localhost:3000/health --name health-check --durable
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
### Productivity
|
|
166
|
-
|
|
167
|
-
```bash
|
|
168
|
-
# Take breaks
|
|
169
|
-
/loop Take a break every hour --name break-reminder --max 4
|
|
170
|
-
|
|
171
|
-
# Daily standup reminder
|
|
172
|
-
/loop Daily standup every 24h --name standup --durable
|
|
173
|
-
|
|
174
|
-
# Code review reminder
|
|
175
|
-
/loop Review pending PRs every 2h --name pr-review --durable
|
|
176
|
-
```
|
|
177
|
-
|
|
178
|
-
## Troubleshooting
|
|
179
|
-
|
|
180
|
-
### Loop Not Running
|
|
181
|
-
|
|
182
|
-
1. Check if loop is paused: `/loop status <name>`
|
|
183
|
-
2. Check if max runs reached: look at run count in status
|
|
184
|
-
3. Check if session is idle: loops only run when agent is idle
|
|
185
|
-
|
|
186
|
-
### Durable Loop Not Persisting
|
|
187
|
-
|
|
188
|
-
1. Check if `.nanopencil/loop-tasks.json` exists
|
|
189
|
-
2. Verify you used `--durable` flag
|
|
190
|
-
3. Check file permissions on project directory
|
|
191
|
-
|
|
192
|
-
### Multiple Instances Triggering Same Loop
|
|
193
|
-
|
|
194
|
-
The scheduler lock prevents this. If you see multiple triggers:
|
|
195
|
-
1. Check if lock file exists: `.nanopencil/loop-scheduler.lock`
|
|
196
|
-
2. Manually remove lock file if necessary
|
|
197
|
-
3. Restart nanoPencil
|
|
198
|
-
|
|
199
|
-
## File Locations
|
|
200
|
-
|
|
201
|
-
```
|
|
202
|
-
<nanopencil>
|
|
203
|
-
├── .nanopencil/
|
|
204
|
-
│ ├── loop-tasks.json # Durable loop storage
|
|
205
|
-
│ └── loop-scheduler.lock # Scheduler lock file
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
## Best Practices
|
|
209
|
-
|
|
210
|
-
1. **Use meaningful names**: `--name` makes it easier to manage loops
|
|
211
|
-
2. **Set appropriate intervals**: Don't poll too frequently (minimum 1m)
|
|
212
|
-
3. **Use durable for long-running tasks**: `--durable` for tasks that should survive session restarts
|
|
213
|
-
4. **Use max runs for finite tasks**: `--max` for tasks that should auto-cancel
|
|
214
|
-
5. **Use quiet for frequent tasks**: `--quiet` reduces UI noise
|
|
1
|
+
# Loop Extension Usage Examples
|
|
2
|
+
|
|
3
|
+
## Basic Usage
|
|
4
|
+
|
|
5
|
+
### Session-Scoped Loops (Default)
|
|
6
|
+
|
|
7
|
+
Session-scoped loops are cleared when you close the session.
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# Check the build every 10 minutes (default)
|
|
11
|
+
/loop check the build
|
|
12
|
+
|
|
13
|
+
# Run a command every 5 minutes
|
|
14
|
+
/loop 5m /grub status
|
|
15
|
+
|
|
16
|
+
# Check PR reviews every 20 minutes
|
|
17
|
+
/loop every 20m Review test failures
|
|
18
|
+
|
|
19
|
+
# Remind to drink water every 30 minutes
|
|
20
|
+
/loop Drink water every 30m --name hydrate --max 8 --quiet
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### Durable Loops (Persistent Across Sessions)
|
|
24
|
+
|
|
25
|
+
Durable loops are saved to `.nanopencil/loop-tasks.json` and resume when you reopen the project.
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
# Monitor build status every 5 minutes, persists across sessions
|
|
29
|
+
/loop Check build status every 5m --durable
|
|
30
|
+
|
|
31
|
+
# Check for new commits every hour
|
|
32
|
+
/loop 1h Check for new commits --durable
|
|
33
|
+
|
|
34
|
+
# Daily status check at 9 AM
|
|
35
|
+
/loop Daily status check --durable --name daily-check
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Managing Loops
|
|
39
|
+
|
|
40
|
+
### List All Loops
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
/loop list
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Output:
|
|
47
|
+
```
|
|
48
|
+
[Loop] 3 scheduled tasks:
|
|
49
|
+
- build-monitor (abc123) every 5m next in 3m [durable] Check build status
|
|
50
|
+
- hydrate (def456) every 30m next in 15m [quiet, max 2/8] Drink water every 30m
|
|
51
|
+
- ghi789 every 10m next in 8m /grub status
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### Get Loop Status
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
/loop status build-monitor
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
Output:
|
|
61
|
+
```
|
|
62
|
+
[Loop] build-monitor (abc123) — scheduled
|
|
63
|
+
Every: 5m
|
|
64
|
+
Kind: prompt (durable)
|
|
65
|
+
Next run: Sat Apr 18 2025 01:05:00 GMT+0800 (in 3m)
|
|
66
|
+
Last run: Sat Apr 18 2025 01:00:00 GMT+0800
|
|
67
|
+
Run count: 5
|
|
68
|
+
Input: Check build status
|
|
69
|
+
Last output: Build is green
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Pause and Resume
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
/loop pause build-monitor
|
|
76
|
+
/loop resume build-monitor
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### Run Immediately
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
/loop run build-monitor
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Cancel a Loop
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
/loop cancel build-monitor
|
|
89
|
+
# or by ID
|
|
90
|
+
/loop cancel abc123
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Clear All Loops
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
/loop clear
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## Advanced Features
|
|
100
|
+
|
|
101
|
+
### Named Loops
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
/loop Check build every 5m --name build-monitor
|
|
105
|
+
/loop pause build-monitor
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### Maximum Runs
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
/loop Drink water every 30m --name hydrate --max 8 --quiet
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Quiet Mode
|
|
115
|
+
|
|
116
|
+
Suppresses per-tick UI messages (errors and terminal events still surface):
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
/loop 5m Check system status --quiet
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Combining Flags
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
/loop Check build every 5m --name build-monitor --durable --quiet
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## Durable vs Session-Scoped Loops
|
|
129
|
+
|
|
130
|
+
| Feature | Session-Scoped | Durable |
|
|
131
|
+
|---------|---------------|---------|
|
|
132
|
+
| Persistence | Lost when session closes | Saved to disk |
|
|
133
|
+
| Multi-process safety | N/A (per-process) | Protected by lock |
|
|
134
|
+
| Use case | Temporary tasks | Long-running monitoring |
|
|
135
|
+
| Storage | In-memory | `.nanopencil/loop-tasks.json` |
|
|
136
|
+
|
|
137
|
+
## Real-World Examples
|
|
138
|
+
|
|
139
|
+
### Development Workflow
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
# Monitor build status while developing
|
|
143
|
+
/loop npm run build --name build-check
|
|
144
|
+
|
|
145
|
+
# Run tests every time you save
|
|
146
|
+
/loop npm test --name test-checker --quiet
|
|
147
|
+
|
|
148
|
+
# Check for linting errors
|
|
149
|
+
/loop npm run lint --name linter --durable
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### Project Monitoring
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
# Check for new git commits
|
|
156
|
+
/loop git pull --name git-update --durable
|
|
157
|
+
|
|
158
|
+
# Monitor dependencies
|
|
159
|
+
/loop npm outdated --name deps-check --durable
|
|
160
|
+
|
|
161
|
+
# Check server health
|
|
162
|
+
/loop curl http://localhost:3000/health --name health-check --durable
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### Productivity
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
# Take breaks
|
|
169
|
+
/loop Take a break every hour --name break-reminder --max 4
|
|
170
|
+
|
|
171
|
+
# Daily standup reminder
|
|
172
|
+
/loop Daily standup every 24h --name standup --durable
|
|
173
|
+
|
|
174
|
+
# Code review reminder
|
|
175
|
+
/loop Review pending PRs every 2h --name pr-review --durable
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
## Troubleshooting
|
|
179
|
+
|
|
180
|
+
### Loop Not Running
|
|
181
|
+
|
|
182
|
+
1. Check if loop is paused: `/loop status <name>`
|
|
183
|
+
2. Check if max runs reached: look at run count in status
|
|
184
|
+
3. Check if session is idle: loops only run when agent is idle
|
|
185
|
+
|
|
186
|
+
### Durable Loop Not Persisting
|
|
187
|
+
|
|
188
|
+
1. Check if `.nanopencil/loop-tasks.json` exists
|
|
189
|
+
2. Verify you used `--durable` flag
|
|
190
|
+
3. Check file permissions on project directory
|
|
191
|
+
|
|
192
|
+
### Multiple Instances Triggering Same Loop
|
|
193
|
+
|
|
194
|
+
The scheduler lock prevents this. If you see multiple triggers:
|
|
195
|
+
1. Check if lock file exists: `.nanopencil/loop-scheduler.lock`
|
|
196
|
+
2. Manually remove lock file if necessary
|
|
197
|
+
3. Restart nanoPencil
|
|
198
|
+
|
|
199
|
+
## File Locations
|
|
200
|
+
|
|
201
|
+
```
|
|
202
|
+
<nanopencil>
|
|
203
|
+
├── .nanopencil/
|
|
204
|
+
│ ├── loop-tasks.json # Durable loop storage
|
|
205
|
+
│ └── loop-scheduler.lock # Scheduler lock file
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
## Best Practices
|
|
209
|
+
|
|
210
|
+
1. **Use meaningful names**: `--name` makes it easier to manage loops
|
|
211
|
+
2. **Set appropriate intervals**: Don't poll too frequently (minimum 1m)
|
|
212
|
+
3. **Use durable for long-running tasks**: `--durable` for tasks that should survive session restarts
|
|
213
|
+
4. **Use max runs for finite tasks**: `--max` for tasks that should auto-cancel
|
|
214
|
+
5. **Use quiet for frequent tasks**: `--quiet` reduces UI noise
|
|
215
215
|
6. **Monitor loops**: Regularly check `/loop list` to ensure loops are working as expected
|
package/docs/models.md
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: models
|
|
3
|
-
description: Use when the user asks how to add, select, or configure models.
|
|
4
|
-
surface: TODO # user entry points: /command, --flag, config key, file location
|
|
5
|
-
owner: core/model-registry.ts # DIP P2 anchor — read its AGENT.md member list to find code
|
|
6
|
-
status: draft
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Models
|
|
10
|
-
|
|
11
|
-
> TODO: one line — what this feature does for the user.
|
|
12
|
-
|
|
13
|
-
## When to use
|
|
14
|
-
TODO: the user intents that should pull this doc (mirrors the frontmatter `description`).
|
|
15
|
-
|
|
16
|
-
## Usage
|
|
17
|
-
TODO: commands / flags / config keys / file locations, with one minimal example.
|
|
18
|
-
|
|
19
|
-
## Behavior & defaults
|
|
20
|
-
TODO: default on/off, side effects, opt-in/opt-out.
|
|
21
|
-
|
|
22
|
-
## Code map → DIP
|
|
23
|
-
- Owner: `core/model-registry.ts` — read its DIP **P2 member list** (the nearest `AGENT.md`) to locate files.
|
|
24
|
-
- Then follow **P3** file headers (WHO / FROM / TO / HERE) to navigate. Do **not** duplicate code paths here.
|
|
25
|
-
|
|
26
|
-
## Related
|
|
27
|
-
[[custom-provider]] [[providers]]
|
|
1
|
+
---
|
|
2
|
+
name: models
|
|
3
|
+
description: Use when the user asks how to add, select, or configure models.
|
|
4
|
+
surface: TODO # user entry points: /command, --flag, config key, file location
|
|
5
|
+
owner: core/model-registry.ts # DIP P2 anchor — read its AGENT.md member list to find code
|
|
6
|
+
status: draft
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Models
|
|
10
|
+
|
|
11
|
+
> TODO: one line — what this feature does for the user.
|
|
12
|
+
|
|
13
|
+
## When to use
|
|
14
|
+
TODO: the user intents that should pull this doc (mirrors the frontmatter `description`).
|
|
15
|
+
|
|
16
|
+
## Usage
|
|
17
|
+
TODO: commands / flags / config keys / file locations, with one minimal example.
|
|
18
|
+
|
|
19
|
+
## Behavior & defaults
|
|
20
|
+
TODO: default on/off, side effects, opt-in/opt-out.
|
|
21
|
+
|
|
22
|
+
## Code map → DIP
|
|
23
|
+
- Owner: `core/model-registry.ts` — read its DIP **P2 member list** (the nearest `AGENT.md`) to locate files.
|
|
24
|
+
- Then follow **P3** file headers (WHO / FROM / TO / HERE) to navigate. Do **not** duplicate code paths here.
|
|
25
|
+
|
|
26
|
+
## Related
|
|
27
|
+
[[custom-provider]] [[providers]]
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# nanoPencil 学习计划
|
|
2
|
+
|
|
3
|
+
> 一份循序渐进的学习路线,帮助寸哥系统掌握 nanoPencil 项目的架构与代码。
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 📌 学习前置
|
|
8
|
+
|
|
9
|
+
- 熟悉 TypeScript 基础
|
|
10
|
+
- 了解 Node.js 运行时
|
|
11
|
+
- 对 CLI / TUI 应用有基本概念
|
|
12
|
+
- 对 Agent / LLM API 有基本了解
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Phase 1:全局认知 — 项目是什么(1-2 天)
|
|
17
|
+
|
|
18
|
+
**目标**:搞清楚 nanoPencil 是什么、能做什么、怎么跑起来。
|
|
19
|
+
|
|
20
|
+
| # | 学习项 | 文件 / 命令 | 产出 |
|
|
21
|
+
|---|--------|------------|------|
|
|
22
|
+
| 1 | 阅读产品宪章 | `.PENCIL.md` | 理解产品性格、交互哲学 |
|
|
23
|
+
| 2 | 阅读项目导航 | `AGENTS.md` | 理解架构拓扑、目录结构、三大模式 |
|
|
24
|
+
| 3 | 安装与运行 | `npm install && npm run build`<br>`npx tsx cli.ts` | 能在终端启动 nanoPencil |
|
|
25
|
+
| 4 | 体验三个模式 | 分别跑 interactive / print / rpc | 感受不同模式的使用场景 |
|
|
26
|
+
| 5 | 体验斜杠命令 | `/model`, `/thinking`, `/fork`, `/compact` 等 | 熟悉内置命令 |
|
|
27
|
+
|
|
28
|
+
**验收标准**:能向别人用一句话解释 nanoPencil 是什么,并演示 TUI 模式下的基本对话。
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Phase 2:核心链路 — 一条消息的生命周期(2-3 天)
|
|
33
|
+
|
|
34
|
+
**目标**:追踪从用户输入到 AI 回复的完整流程。
|
|
35
|
+
|
|
36
|
+
| # | 学习项 | 文件 | 关键概念 |
|
|
37
|
+
|---|--------|------|----------|
|
|
38
|
+
| 1 | CLI 入口 | `cli.ts`, `main.ts` | 参数解析、模式选择 |
|
|
39
|
+
| 2 | AgentSession 生命周期 | `core/runtime/agent-session.ts` | 会话创建、模型切换、工具执行 |
|
|
40
|
+
| 3 | TUI 模式交互 | `modes/interactive/interactive-mode.ts` | 输入读取、输出渲染、事件循环 |
|
|
41
|
+
| 4 | 工具执行链路 | `core/tools/` 目录 | ToolOrchestrator、bash/read/edit/write |
|
|
42
|
+
| 5 | Prompt 构建 | `core/prompt/system-prompt.ts` | 系统提示词组装、上下文注入 |
|
|
43
|
+
| 6 | 模型调用 | `core/lib/ai/` + `core/model/` | Provider 抽象、API 调用、流式响应 |
|
|
44
|
+
|
|
45
|
+
**验收标准**:能画出从用户输入到模型返回的调用链,标注每个关键节点的职责。
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Phase 3:扩展系统 — 能力如何生长(2-3 天)
|
|
50
|
+
|
|
51
|
+
**目标**:理解 nanoPencil 的插件架构,学会写扩展。
|
|
52
|
+
|
|
53
|
+
| # | 学习项 | 文件 | 关键概念 |
|
|
54
|
+
|---|--------|------|----------|
|
|
55
|
+
| 1 | Extension Host | `core/extensions-host/loader.ts`<br>`runner.ts`, `wrapper.ts` | 发现、加载、生命周期 |
|
|
56
|
+
| 2 | 扩展事件钩子 | `core/extensions-host/types.ts` | before_agent_start, tool_call, context 等 |
|
|
57
|
+
| 3 | 内置扩展源码 | `extensions/builtin/` | interview, loop, link-world, soul 等 |
|
|
58
|
+
| 4 | Skill 系统 | `core/skills.ts` + `.agents/skills/` | Skill 定义、触发条件 |
|
|
59
|
+
| 5 | MCP 集成 | `core/mcp/` 目录 | MCP 协议、客户端、适配器 |
|
|
60
|
+
|
|
61
|
+
**动手任务**:写一个最小的自定义扩展(注册一个自定义工具或斜杠命令)。
|
|
62
|
+
|
|
63
|
+
**验收标准**:能独立创建一个扩展,并在 nanoPencil 中加载运行。
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## Phase 4:会话管理 — 记忆与持久化(1-2 天)
|
|
68
|
+
|
|
69
|
+
**目标**:理解对话如何保存、分支、压缩。
|
|
70
|
+
|
|
71
|
+
| # | 学习项 | 文件 | 关键概念 |
|
|
72
|
+
|---|--------|------|----------|
|
|
73
|
+
| 1 | 会话持久化 | `core/session/session-manager.ts` | JSONL 格式、会话切换 |
|
|
74
|
+
| 2 | 会话分支 | `core/session/branch-summarization.ts` | Fork、分支摘要 |
|
|
75
|
+
| 3 | 上下文压缩 | `core/session/compaction/compaction.ts` | 窗口管理、Token 估算 |
|
|
76
|
+
| 4 | 配置系统 | `core/platform/config/` | 全局+项目级设置、auth 存储 |
|
|
77
|
+
|
|
78
|
+
**验收标准**:能解释会话 fork 和 compaction 的工作原理。
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## Phase 5:特色能力 — 差异化功能(2-3 天)
|
|
83
|
+
|
|
84
|
+
**目标**:掌握 nanoPencil 区别于其他 Agent 的核心能力。
|
|
85
|
+
|
|
86
|
+
| # | 学习项 | 文件 | 关键概念 |
|
|
87
|
+
|---|--------|------|----------|
|
|
88
|
+
| 1 | SubAgent 系统 | `core/sub-agent/` | Agent 工具、子进程隔离、结果提取 |
|
|
89
|
+
| 2 | Git Worktree | `core/workspace/worktree-manager.ts` | 临时工作区、变更检测、Patch 生成 |
|
|
90
|
+
| 3 | Soul / 人格系统 | `core/soul-integration.ts`<br>`packages/soul-core/` | AI 人格演化 |
|
|
91
|
+
| 4 | Memory 系统 | `packages/mem-core/` | 持久化记忆、记忆检索 |
|
|
92
|
+
| 5 | 联网能力 | `extensions/builtin/link-world/` | agent-reach、搜索、浏览器 |
|
|
93
|
+
|
|
94
|
+
**验收标准**:能用一句话解释 SubAgent 和 Worktree 的设计意图。
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Phase 6:架构深度 — 设计哲学与规范(2-3 天)
|
|
99
|
+
|
|
100
|
+
**目标**:理解项目的设计哲学,为贡献代码做准备。
|
|
101
|
+
|
|
102
|
+
| # | 学习项 | 文件 | 关键概念 |
|
|
103
|
+
|---|--------|------|----------|
|
|
104
|
+
| 1 | DIP 协议 | `AGENTS.md` §DIP Protocol | P1/P2/P3 文档层级、同构性 |
|
|
105
|
+
| 2 | 特性工作流 | `.dev-docs/feature-workflow.md` | 四步循环、层级归属、验收门 |
|
|
106
|
+
| 3 | 代码规范 | `AGENTS.md` §Code Standards | 语言策略、提交约定 |
|
|
107
|
+
| 4 | 代码异味 | `AGENTS.md` §Code Smells | 识别和消除坏味道 |
|
|
108
|
+
| 5 | 发布流程 | `AGENTS.md` §Release Process | 版本管理、CHANGELOG 生成 |
|
|
109
|
+
| 6 | 对标分析 | `docs/对标Claude-Code.md` | 与竞品的差距与优势 |
|
|
110
|
+
|
|
111
|
+
**验收标准**:能按照项目规范完成一次完整的 PR 流程(从创建分支到提交)。
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## Phase 7:实战演练(持续)
|
|
116
|
+
|
|
117
|
+
| # | 任务 | 说明 |
|
|
118
|
+
|---|------|------|
|
|
119
|
+
| 1 | 修复一个 bug | 从 issue 或测试失败入手 |
|
|
120
|
+
| 2 | 新增一个小功能 | 比如一个新工具或新命令 |
|
|
121
|
+
| 3 | 写一篇扩展教程 | 帮助新人入门 |
|
|
122
|
+
| 4 | 参与 Code Review | 用 `requesting-code-review` skill |
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
## 🗂️ 学习资源索引
|
|
127
|
+
|
|
128
|
+
### 核心文档
|
|
129
|
+
| 文件 | 说明 |
|
|
130
|
+
|------|------|
|
|
131
|
+
| `AGENTS.md` | P1 根文档:架构、命令、规范 |
|
|
132
|
+
| `.PENCIL.md` | 产品性格宪章 |
|
|
133
|
+
| `core/AGENT.md` | P2 Core 模块地图 |
|
|
134
|
+
| `modes/AGENT.md` | P2 模式模块地图 |
|
|
135
|
+
| `extensions/AGENT.md` | P2 扩展模块地图 |
|
|
136
|
+
|
|
137
|
+
### 设计文档
|
|
138
|
+
| 文件 | 说明 |
|
|
139
|
+
|------|------|
|
|
140
|
+
| `docs/cc-agent-design.md` | Claude Code Agent 设计 |
|
|
141
|
+
| `docs/cc-tui-design.md` | TUI 设计规范 |
|
|
142
|
+
| `docs/planmode.md` | Plan Mode 设计 |
|
|
143
|
+
| `docs/pi-design-philosophy.md` | PI 设计哲学 |
|
|
144
|
+
| `docs/对标Claude-Code.md` | 竞品对标分析 |
|
|
145
|
+
|
|
146
|
+
### 配置路径
|
|
147
|
+
| 路径 | 说明 |
|
|
148
|
+
|------|------|
|
|
149
|
+
| `~/.pencils/agents/` | 全局配置根目录 |
|
|
150
|
+
| `~/.pencils/agents/<id>/settings.json` | 用户偏好 |
|
|
151
|
+
| `~/.pencils/agents/<id>/models.json` | 模型定义 |
|
|
152
|
+
| `~/.pencils/agents/<id>/auth.json` | API 密钥 |
|
|
153
|
+
| `~/.pencils/agents/<id>/sessions/` | 对话历史 |
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## 📅 建议节奏
|
|
158
|
+
|
|
159
|
+
| 周次 | 阶段 | 时间投入 |
|
|
160
|
+
|------|------|----------|
|
|
161
|
+
| 第 1 周 | Phase 1-2 | 每天 1-2 小时 |
|
|
162
|
+
| 第 2 周 | Phase 3-4 | 每天 1-2 小时 |
|
|
163
|
+
| 第 3 周 | Phase 5-6 | 每天 1-2 小时 |
|
|
164
|
+
| 第 4 周+ | Phase 7 | 按需实战 |
|
|
165
|
+
|
|
166
|
+
> 蕾姆的建议:不用急着赶进度。每个阶段结束后,试着用自己的话总结一遍"这个部分解决了什么问题"。这样理解会更深。
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
*这份计划由蕾姆为寸哥整理。*
|