@hk_net/pi-advisor 0.1.6 → 0.1.8

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.
Files changed (5) hide show
  1. package/CHANGELOG.md +94 -73
  2. package/LICENSE +287 -287
  3. package/README.md +193 -182
  4. package/advisor.ts +1110 -1082
  5. package/package.json +53 -39
package/CHANGELOG.md CHANGED
@@ -1,73 +1,94 @@
1
- # Changelog
2
-
3
- ## 0.1.6 - 2026-07-21
4
-
5
- ### Changed
6
-
7
- - Raise the Pi peer dependency minimum to 0.81.1 and verify compatibility with that release.
8
- - Update the repository lockfile to Pi's packaged `brace-expansion` 5.0.7 dependency.
9
-
10
- ## 0.1.5 - 2026-07-20
11
-
12
- ### Changed
13
-
14
- - Correct and clarify the current Pi compatibility and autocomplete documentation.
15
-
16
- ## 0.1.4 - 2026-07-20
17
-
18
- ### Changed
19
-
20
- - Derive advisor thinking-level choices from Pi's supported levels for the selected reviewer model.
21
- - Add `max` support where the selected reviewer model exposes it.
22
- - Improve `/advisor` autocomplete: `/adviso...` completes without a trailing space; model completion leads to that model's thinking-level picker; `on-done` and `when-stuck` open their value pickers directly.
23
-
24
- ## 0.1.3 - 2026-06-24
25
-
26
- ### Changed
27
-
28
- - Bumped pi peer dependencies to `>=0.80.2`.
29
-
30
- ## 0.1.2 - 2026-06-23
31
-
32
- ### Changed
33
-
34
- - Bumped package and pi peer/dev dependencies to `0.80.1`.
35
- - Updated advisor completion calls to import the compatibility helper from `@earendil-works/pi-ai/compat`, matching pi-ai `0.80.1`.
36
-
37
- ## 0.1.1
38
-
39
- ### Changed
40
-
41
- - Bumped package and pi peer/dev dependencies to `0.79.1`.
42
- - Added pi `0.79.1` autocomplete-provider integration for `/advisor ...` and `/advise ...` arguments.
43
- - Honor pi project trust for project-local `.pi/advisor.json`; untrusted projects cannot silently configure advisor or enable auto-triggers.
44
-
45
- ## 0.1.0
46
-
47
- ### Added
48
-
49
- - Initial release of pi-advisor
50
- - Added runtime config validation and pure-helper tests
51
-
52
- ### Fixed
53
-
54
- - Retry advisor once with visible-text-only prompting when the reviewer returns reasoning-only output, and show diagnostics instead of the vague "returned no text" placeholder
55
- - Treat `timeoutMs: 0` as provider-default timeout when calling the reviewer model
56
- - Remove arbitrary 120-char truncation from loop-detection fingerprint
57
- - Reorder /advise autocomplete — steer/pipe before show
58
- - Robust arg parsing in /advisor autocomplete
59
-
60
- ### Changed
61
-
62
- - Require an explicitly configured advisor model before sending transcripts; removed implicit latest-GPT/current-model fallback
63
- - Documented `/advise` default injection behavior and named transcript truncation limits
64
- - Hardened the reviewer prompt against transcript-borne prompt injection
65
- - Made /advisor model selection scrollable so long model lists stay within the terminal view
66
- - Refreshed the model registry before listing and resolving advisor models so OAuth/subscription-backed providers added via /login are selectable
67
- - Allowed advisor model resolution and execution to use header-only auth as well as API-key auth
68
- - Changed /advise so its default show mode is clearly UI-only and not presented as model-injected chat content; added pipe and steer modes to feed advisor feedback into the active conversation
69
- - Added loop detection to when-stuck trigger
70
- - Clarified /advisor opens interactive model picker + thinking-level selection
71
- - Split /advisor none/default into two lines
72
- - Merged /advisor picker rows into single line
73
- - Updated /advisor when-stuck table row to mention loop detection
1
+ # Changelog
2
+
3
+ ## 0.1.8 - 2026-08-23
4
+
5
+ ### Changed
6
+
7
+ - Mark Pi's host-provided SDK packages as optional wildcard peers so npm does not install a redundant Pi SDK dependency tree.
8
+ - Verify development and tests against Pi SDK 0.84.2 while retaining runtime compatibility with Pi 0.84.1 and newer.
9
+ - Refine advisor tool guidance so non-trivial tasks require a review at an evidence-backed checkpoint before the final answer without encouraging an immediate first-action call.
10
+ - Make reviewer responses checkpoint-aware, evidence-grounded, and limited to a verdict plus three prioritized actions.
11
+ - Prevent `/advisor` from writing project-scoped configuration until Pi trusts the project.
12
+ - Run `onDone` review only after Pi fully settles retries, compaction recovery, and queued continuations.
13
+ - Write advisor configuration atomically with owner-only file permissions where supported.
14
+ - Document that the individual package and GitHub bundle must not be installed together.
15
+
16
+ ## 0.1.7 - 2026-08-13
17
+
18
+ ### Changed
19
+
20
+ - Raise the Pi peer dependency minimum to 0.84.1 and verify compatibility with that release.
21
+ - Accept Pi 0.84.1 provider headers that suppress defaults with `null` values.
22
+ - Refresh the repository lockfile to remove known dependency vulnerabilities.
23
+
24
+ ## 0.1.6 - 2026-07-21
25
+
26
+ ### Changed
27
+
28
+ - Raise the Pi peer dependency minimum to 0.81.1 and verify compatibility with that release.
29
+ - Update the repository lockfile to Pi's packaged `brace-expansion` 5.0.7 dependency.
30
+
31
+ ## 0.1.5 - 2026-07-20
32
+
33
+ ### Changed
34
+
35
+ - Correct and clarify the current Pi compatibility and autocomplete documentation.
36
+
37
+ ## 0.1.4 - 2026-07-20
38
+
39
+ ### Changed
40
+
41
+ - Derive advisor thinking-level choices from Pi's supported levels for the selected reviewer model.
42
+ - Add `max` support where the selected reviewer model exposes it.
43
+ - Improve `/advisor` autocomplete: `/adviso...` completes without a trailing space; model completion leads to that model's thinking-level picker; `on-done` and `when-stuck` open their value pickers directly.
44
+
45
+ ## 0.1.3 - 2026-06-24
46
+
47
+ ### Changed
48
+
49
+ - Bumped pi peer dependencies to `>=0.80.2`.
50
+
51
+ ## 0.1.2 - 2026-06-23
52
+
53
+ ### Changed
54
+
55
+ - Bumped package and pi peer/dev dependencies to `0.80.1`.
56
+ - Updated advisor completion calls to import the compatibility helper from `@earendil-works/pi-ai/compat`, matching pi-ai `0.80.1`.
57
+
58
+ ## 0.1.1
59
+
60
+ ### Changed
61
+
62
+ - Bumped package and pi peer/dev dependencies to `0.79.1`.
63
+ - Added pi `0.79.1` autocomplete-provider integration for `/advisor ...` and `/advise ...` arguments.
64
+ - Honor pi project trust for project-local `.pi/advisor.json`; untrusted projects cannot silently configure advisor or enable auto-triggers.
65
+
66
+ ## 0.1.0
67
+
68
+ ### Added
69
+
70
+ - Initial release of pi-advisor
71
+ - Added runtime config validation and pure-helper tests
72
+
73
+ ### Fixed
74
+
75
+ - Retry advisor once with visible-text-only prompting when the reviewer returns reasoning-only output, and show diagnostics instead of the vague "returned no text" placeholder
76
+ - Treat `timeoutMs: 0` as provider-default timeout when calling the reviewer model
77
+ - Remove arbitrary 120-char truncation from loop-detection fingerprint
78
+ - Reorder /advise autocomplete — steer/pipe before show
79
+ - Robust arg parsing in /advisor autocomplete
80
+
81
+ ### Changed
82
+
83
+ - Require an explicitly configured advisor model before sending transcripts; removed implicit latest-GPT/current-model fallback
84
+ - Documented `/advise` default injection behavior and named transcript truncation limits
85
+ - Hardened the reviewer prompt against transcript-borne prompt injection
86
+ - Made /advisor model selection scrollable so long model lists stay within the terminal view
87
+ - Refreshed the model registry before listing and resolving advisor models so OAuth/subscription-backed providers added via /login are selectable
88
+ - Allowed advisor model resolution and execution to use header-only auth as well as API-key auth
89
+ - Changed /advise so its default show mode is clearly UI-only and not presented as model-injected chat content; added pipe and steer modes to feed advisor feedback into the active conversation
90
+ - Added loop detection to when-stuck trigger
91
+ - Clarified /advisor opens interactive model picker + thinking-level selection
92
+ - Split /advisor none/default into two lines
93
+ - Merged /advisor picker rows into single line
94
+ - Updated /advisor when-stuck table row to mention loop detection