chore: update stats model, use pi for subagents

Amolith created

Change summary

README.md                                               | 251 +++++-----
skill-stats.go                                          |   2 
skills/invoking-subagents/SKILL.md                      |  15 
skills/invoking-subagents/references/installing-synu.md |   1 
4 files changed, 133 insertions(+), 136 deletions(-)

Detailed changes

README.md 🔗

@@ -211,261 +211,256 @@ endpoint with [./skill-stats.go](./skill-stats.go).
 === addressing-agent-comments ===
 
 Token breakdown:
-  Name:           22 tokens
-  Description:    96 tokens
-  Body:          706 tokens (40 lines)
+  Name:            8 tokens
+  Description:    36 tokens
+  Body:          271 tokens (40 lines)
   ───────────────────────────────────────────────
-  Total:         824 tokens
+  Total:         315 tokens
 
 === ast-grep ===
 
 Token breakdown:
-  Name:           18 tokens
-  Description:   198 tokens
-  Body:         7503 tokens (469 lines)
+  Name:            7 tokens
+  Description:    76 tokens
+  Body:         2765 tokens (469 lines)
   References:
-    rule_reference.md                         6814 tokens
+    rule_reference.md                         2515 tokens
   ───────────────────────────────────────────────
-  Total:       14533 tokens
-  ⚠️  Body exceeds recommended 5000 token budget!
+  Total:        5363 tokens
 
 === auditing-repositories ===
 
 Token breakdown:
-  Name:           20 tokens
-  Description:   140 tokens
-  Body:         2840 tokens (156 lines)
+  Name:            8 tokens
+  Description:    51 tokens
+  Body:         1046 tokens (156 lines)
   References:
-    llm-security.md                           1138 tokens
+    llm-security.md                            427 tokens
   ───────────────────────────────────────────────
-  Total:        4138 tokens
+  Total:        1532 tokens
 
 === authoring-skills ===
 
 Token breakdown:
-  Name:           20 tokens
-  Description:    86 tokens
-  Body:         2000 tokens (102 lines)
+  Name:            8 tokens
+  Description:    32 tokens
+  Body:          733 tokens (102 lines)
   References:
-    checklist.md                               806 tokens
-    patterns.md                               2415 tokens
-    process.md                                 833 tokens
-    specification.md                          3890 tokens
+    checklist.md                               301 tokens
+    patterns.md                                880 tokens
+    process.md                                 311 tokens
+    specification.md                          1441 tokens
   ───────────────────────────────────────────────
-  Total:       10050 tokens
+  Total:        3706 tokens
 
 === collaborating-through-pr-pico-sh ===
 
 Token breakdown:
-  Name:           30 tokens
-  Description:   120 tokens
-  Body:         1377 tokens (43 lines)
+  Name:           12 tokens
+  Description:    47 tokens
+  Body:          521 tokens (43 lines)
   References:
-    contributing.md                            435 tokens
-    jujutsu.md                                1409 tokens
-    reviewing.md                              1080 tokens
+    contributing.md                            162 tokens
+    jujutsu.md                                 516 tokens
+    reviewing.md                               406 tokens
   ───────────────────────────────────────────────
-  Total:        4451 tokens
+  Total:        1664 tokens
 
 === creating-tasks-through-lunatask ===
 
 Token breakdown:
-  Name:           30 tokens
-  Description:   108 tokens
-  Body:         1841 tokens (84 lines)
+  Name:           12 tokens
+  Description:    41 tokens
+  Body:          687 tokens (84 lines)
   References:
-    cli.md                                     589 tokens
-    handoff.md                                2769 tokens
-    installing-lune.md                         176 tokens
+    cli.md                                     218 tokens
+    handoff.md                                1035 tokens
+    installing-lune.md                          65 tokens
   ───────────────────────────────────────────────
-  Total:        5513 tokens
+  Total:        2058 tokens
 
 === formatting-commits ===
 
 Token breakdown:
-  Name:           22 tokens
-  Description:    98 tokens
-  Body:          992 tokens (43 lines)
+  Name:            8 tokens
+  Description:    37 tokens
+  Body:          361 tokens (43 lines)
   References:
-    installing-git-format.md                    64 tokens
+    installing-git-format.md                    22 tokens
   ───────────────────────────────────────────────
-  Total:        1176 tokens
+  Total:         428 tokens
 
 === frontend-accessibility ===
 
 Token breakdown:
-  Name:           20 tokens
-  Description:   140 tokens
-  Body:         2891 tokens (148 lines)
+  Name:            7 tokens
+  Description:    52 tokens
+  Body:         1080 tokens (148 lines)
   References:
-    antipatterns.md                           3638 tokens
-    patterns.md                               6233 tokens
+    antipatterns.md                           1341 tokens
+    patterns.md                               2279 tokens
   ───────────────────────────────────────────────
-  Total:       12922 tokens
+  Total:        4759 tokens
 
 === handling-customer-data ===
 
 Token breakdown:
-  Name:           22 tokens
-  Description:   123 tokens
-  Body:         1983 tokens (107 lines)
+  Name:            9 tokens
+  Description:    46 tokens
+  Body:          718 tokens (107 lines)
   ───────────────────────────────────────────────
-  Total:        2128 tokens
+  Total:         773 tokens
 
 === humanizer ===
 
 Token breakdown:
-  Name:           15 tokens
-  Description:    84 tokens
-  Body:         8536 tokens (462 lines)
+  Name:            6 tokens
+  Description:    31 tokens
+  Body:         3274 tokens (462 lines)
   ───────────────────────────────────────────────
-  Total:        8635 tokens
-  ⚠️  Body exceeds recommended 5000 token budget!
+  Total:        3311 tokens
 
 === invoking-subagents ===
 
 Token breakdown:
-  Name:           20 tokens
-  Description:   113 tokens
-  Body:          796 tokens (13 lines)
-  References:
-    installing-synu.md                         140 tokens
+  Name:            8 tokens
+  Description:    42 tokens
+  Body:          227 tokens (16 lines)
   ───────────────────────────────────────────────
-  Total:        1069 tokens
+  Total:         277 tokens
 
 === managing-and-navigating-worktrees ===
 
 Token breakdown:
-  Name:           32 tokens
-  Description:   164 tokens
-  Body:         1912 tokens (96 lines)
+  Name:           11 tokens
+  Description:    60 tokens
+  Body:          703 tokens (96 lines)
   ───────────────────────────────────────────────
-  Total:        2108 tokens
+  Total:         774 tokens
 
 === notifying-through-ntfy ===
 
 Token breakdown:
-  Name:           25 tokens
-  Description:    93 tokens
-  Body:         2884 tokens (89 lines)
+  Name:           10 tokens
+  Description:    37 tokens
+  Body:         1052 tokens (89 lines)
   References:
-    ht.md                                     1063 tokens
-    httpie.md                                 1067 tokens
-    nodejs.md                                 1497 tokens
-    python.md                                 1468 tokens
-    wget.md                                   1216 tokens
+    ht.md                                      383 tokens
+    httpie.md                                  385 tokens
+    nodejs.md                                  541 tokens
+    python.md                                  517 tokens
+    wget.md                                    430 tokens
   ───────────────────────────────────────────────
-  Total:        9313 tokens
+  Total:        3355 tokens
 
 === rebasing-with-git ===
 
 Token breakdown:
-  Name:           22 tokens
-  Description:   188 tokens
-  Body:         6282 tokens (232 lines)
+  Name:            8 tokens
+  Description:    71 tokens
+  Body:         2317 tokens (232 lines)
   ───────────────────────────────────────────────
-  Total:        6492 tokens
-  ⚠️  Body exceeds recommended 5000 token budget!
+  Total:        2396 tokens
 
 === researching-with-rumilo ===
 
 Token breakdown:
-  Name:           25 tokens
-  Description:   159 tokens
-  Body:         3082 tokens (111 lines)
+  Name:           10 tokens
+  Description:    60 tokens
+  Body:         1152 tokens (111 lines)
   ───────────────────────────────────────────────
-  Total:        3266 tokens
+  Total:        1222 tokens
 
 === resuming-work-through-lunatask ===
 
 Token breakdown:
-  Name:           30 tokens
-  Description:   113 tokens
-  Body:         1241 tokens (42 lines)
+  Name:           12 tokens
+  Description:    44 tokens
+  Body:          466 tokens (42 lines)
   References:
-    cli.md                                     528 tokens
-    installing-lune.md                         176 tokens
+    cli.md                                     195 tokens
+    installing-lune.md                          65 tokens
   ───────────────────────────────────────────────
-  Total:        2088 tokens
+  Total:         782 tokens
 
 === reviewing-code ===
 
 Token breakdown:
-  Name:           18 tokens
-  Description:   132 tokens
-  Body:          970 tokens (48 lines)
+  Name:            7 tokens
+  Description:    51 tokens
+  Body:          355 tokens (48 lines)
   ───────────────────────────────────────────────
-  Total:        1120 tokens
+  Total:         413 tokens
 
 === scripting-with-go ===
 
 Token breakdown:
-  Name:           20 tokens
-  Description:   120 tokens
-  Body:         1968 tokens (138 lines)
+  Name:            8 tokens
+  Description:    46 tokens
+  Body:          727 tokens (138 lines)
   ───────────────────────────────────────────────
-  Total:        2108 tokens
+  Total:         781 tokens
 
 === working-with-tmux ===
 
 Token breakdown:
-  Name:           22 tokens
-  Description:    84 tokens
-  Body:         1465 tokens (87 lines)
+  Name:            8 tokens
+  Description:    32 tokens
+  Body:          544 tokens (87 lines)
   ───────────────────────────────────────────────
-  Total:        1571 tokens
+  Total:         584 tokens
 
 === writing-git-tags ===
 
 Token breakdown:
-  Name:           22 tokens
-  Description:   101 tokens
-  Body:         2232 tokens (107 lines)
+  Name:            7 tokens
+  Description:    38 tokens
+  Body:          821 tokens (107 lines)
   References:
-    installing-git-format.md                    64 tokens
+    installing-git-format.md                    22 tokens
   ───────────────────────────────────────────────
-  Total:        2419 tokens
+  Total:         888 tokens
 
 === writing-roc-lang ===
 
 Token breakdown:
-  Name:           22 tokens
-  Description:   142 tokens
-  Body:         1846 tokens (117 lines)
+  Name:            8 tokens
+  Description:    53 tokens
+  Body:          693 tokens (117 lines)
   References:
-    builtins-llms.md                         67881 tokens
-    llms.md                                  11324 tokens
-    scripting.md                              1722 tokens
+    builtins-llms.md                         25216 tokens
+    llms.md                                   4253 tokens
+    scripting.md                               614 tokens
   ───────────────────────────────────────────────
-  Total:       82937 tokens
+  Total:       30837 tokens
 
 === writing-rust ===
 
 Token breakdown:
-  Name:           18 tokens
-  Description:   120 tokens
-  Body:         3628 tokens (139 lines)
+  Name:            7 tokens
+  Description:    45 tokens
+  Body:         1324 tokens (139 lines)
   References:
-    idioms.md                                 4605 tokens
+    idioms.md                                 1708 tokens
   ───────────────────────────────────────────────
-  Total:        8371 tokens
+  Total:        3084 tokens
 
 ============================================================
 SUMMARY
 ============================================================
 
 Skills: 22
-Metadata: 3217 tokens
-Combined bodies: 58975 tokens
-Overall: 187232 tokens
+Metadata: 1217 tokens
+Combined bodies: 21837 tokens
+Overall: 69302 tokens
 Validation errors: 0
 
 Largest skills (by total tokens):
-  1. writing-roc-lang                         82937 tokens
-  2. ast-grep                                 14533 tokens
-  3. frontend-accessibility                   12922 tokens
-  4. authoring-skills                         10050 tokens
-  5. notifying-through-ntfy                    9313 tokens
+  1. writing-roc-lang                         30837 tokens
+  2. ast-grep                                  5363 tokens
+  3. frontend-accessibility                    4759 tokens
+  4. authoring-skills                          3706 tokens
+  5. notifying-through-ntfy                    3355 tokens
 ```
 
 ---

skill-stats.go 🔗

@@ -20,7 +20,7 @@ import (
 
 const (
 	syntheticAPI = "https://api.synthetic.new/anthropic/v1/messages/count_tokens"
-	model        = "hf:deepseek-ai/DeepSeek-V3-0324"
+	model        = "hf:moonshotai/Kimi-K2.5"
 	workerCount  = 5 // Number of parallel API workers
 )
 

skills/invoking-subagents/SKILL.md 🔗

@@ -7,16 +7,19 @@ metadata:
   author: Amolith <amolith@secluded.site>
 ---
 
-Invoke with `synu claude --flags -p 'prompt'`.
+Invoke with `PI_PERMISSION_LEVEL=level pi -p 'prompt'`. DO NOT impose a timeout.
 
-**Important:** Subagents are scoped to their cwd, just like you. To work in another repository, `cd` there first.
+**Important:** Subagents are scoped to their cwd. To invoke a subagent in another folder, `cd there && PI_PERMISSION_LEVEL=level pi ...`.
 
-Use a precise and thorough prompt. Aggressively restrict which tools it can interact with; if it doesn't need Edit, don't give it Edit. If it needs to read files, Glob, Grep, and Read are probably sufficient. Task can be helpful. Notebook, Slash, Write, Web, Edit, etc. should almost never be necessary. Execute them in the background. You may invoke multiple when appropriate and in parallel if helpful. Once they're running, you may either stop and wait for me to tell you they're finished or continue with other work.
+Use a precise and thorough prompt. You may invoke multiple when appropriate and in parallel if helpful. Once they're running, you may either stop and wait for me to tell you they're finished or continue with other work. Aggressively restrict their permissions:
+
+- minimal: read-only commands such as ls, cat, git status, etc.
+- low: + write/edit files
+- medium: + npm, git, make, cargo, etc.
+- high: everything (though particular dangerous commands are still disallowed)
 
 Example exploring git history in another repo:
 
 ```bash
-cd /path/to/other/repo && fish -c "synu claude --disallowed-tools 'Bash(*) Explore Edit Read WebFetch WebSearch Glob Grep NotebookEdit NotebookRead SlashCommand Write' --allowed-tools 'Bash(git log:*) Bash(git show:*)' -p 'Using only git log and git show, summarise the major user-facing changes in HASH..HASH. Do not provide code snippets or technical details. Consider user-facing changes, like being able to set a port-out PIN or adding a new button or changing font sizes.'"
+cd /path/to/other/repo && PI_PERMISSION_LEVEL=minimal pi -p 'Using only git log and git show, summarise the major user-facing changes in HASH..HASH. Do not provide code snippets or technical details. Consider user-facing changes, like being able to set a port-out PIN or adding a new button or changing font sizes.'"
 ```
-
-Refer to [installing-synu.md](references/installing-synu.md) if it's unavailable.

skills/invoking-subagents/references/installing-synu.md 🔗

@@ -1 +0,0 @@
-Depends on user's shell. Read https://git.secluded.site/synu/blob/main/README.md?raw=1 and ask them which shell/plugin manager they prefer. If their plugin manager isn't listed, it might not support arbitrary git hosts.