@mrclrchtr/supi-extras 2.3.1 → 2.4.0

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 CHANGED
@@ -63,9 +63,9 @@ If the stash file cannot be read or written, the feature degrades to in-memory u
63
63
 
64
64
  While the agent is working, the package animates a spinner in the terminal tab title. When the turn finishes, it shows a done marker. If `ask_user` is active, the spinner pauses so the waiting-for-input title is not overwritten.
65
65
 
66
- ### Footer model and effort colors
66
+ ### Footer replacement
67
67
 
68
- The footer keeps pi's existing information but recolors the active model and reasoning level using theme tokens.
68
+ The package replaces pi's default footer. The model name is colored by provider using theme tokens; thinking level coloring delegates to Pi's theme.
69
69
 
70
70
  ### Headless git safety
71
71
 
@@ -83,5 +83,6 @@ That prevents git subprocesses from hanging while waiting for an interactive edi
83
83
  - `src/skill-shortcut.ts` — `$skill-name` expansion and autocomplete
84
84
  - `src/tab-spinner.ts` — terminal tab-title spinner
85
85
  - `src/copy-prompt.ts` and `src/clipboard.ts` — copy-to-clipboard shortcut and helper
86
- - `src/model-effort-colors.ts` — footer recoloring
86
+ - `src/supi-footer.ts` — footer replacement
87
+ - `src/supi-footer-helpers.ts` — pure helpers
87
88
  - `src/git-editor.ts` — git editor environment guard
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mrclrchtr/supi-core",
3
- "version": "2.3.1",
3
+ "version": "2.4.0",
4
4
  "description": "SuPi core — shared infrastructure for SuPi extensions (XML context tags, config system)",
5
5
  "license": "MIT",
6
6
  "repository": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mrclrchtr/supi-extras",
3
- "version": "2.3.1",
3
+ "version": "2.4.0",
4
4
  "description": "SuPi extras — command aliases, skill shorthand, tab spinner, /supi-stash prompt stash with TUI overlay, and other small utilities",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -33,7 +33,7 @@
33
33
  ],
34
34
  "dependencies": {
35
35
  "clipboardy": "^5.3.1",
36
- "@mrclrchtr/supi-core": "2.3.1"
36
+ "@mrclrchtr/supi-core": "2.4.0"
37
37
  },
38
38
  "bundledDependencies": [
39
39
  "@mrclrchtr/supi-core"
package/src/index.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  import aliases from "./aliases.ts";
2
2
  import copyPrompt from "./copy-prompt.ts";
3
3
  import gitEditor from "./git-editor.ts";
4
- import modelEffortColors from "./model-effort-colors.ts";
5
4
  import promptStash from "./prompt-stash.ts";
6
5
  import skillShortcut from "./skill-shortcut.ts";
6
+ import supiFooter from "./supi-footer.ts";
7
7
  import tabSpinner from "./tab-spinner.ts";
8
8
 
9
9
  export default function (pi: Parameters<typeof tabSpinner>[0]) {
@@ -13,5 +13,5 @@ export default function (pi: Parameters<typeof tabSpinner>[0]) {
13
13
  gitEditor(pi);
14
14
  aliases(pi);
15
15
  skillShortcut(pi);
16
- modelEffortColors(pi);
16
+ supiFooter(pi);
17
17
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Pure helpers for model-effort-colors extension.
2
+ * Pure helpers for supi-footer extension.
3
3
  * Extracted to keep the extension entrypoint under complexity / line-count limits.
4
4
  */
5
5
  import type { ThemeColor } from "@earendil-works/pi-coding-agent";
@@ -1,10 +1,10 @@
1
1
  /**
2
- * Model/effort footer coloring for pi.
2
+ * SuPi footer for pi.
3
3
  *
4
- * Colors the model name in the footer by semantically mapping the provider
5
- * to PI theme tokens, and colors the thinking/effort level using PI's
6
- * built-in thinking-level theme tokens. No hardcoded hex colors, no
7
- * animations.
4
+ * Replaces pi's default footer. Colors the model name by provider using
5
+ * theme tokens, delegates thinking-level coloring to Pi's
6
+ * theme.getThinkingBorderColor, and integrates stats contributions from
7
+ * the footer registry. No hardcoded hex colors, no animations.
8
8
  */
9
9
  import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
10
10
  import { truncateToWidth, visibleWidth } from "@earendil-works/pi-tui";
@@ -22,13 +22,13 @@ import {
22
22
  sanitizeStatusText,
23
23
  styleRightSide,
24
24
  type UsageEntry,
25
- } from "./model-effort-colors-helpers.ts";
25
+ } from "./supi-footer-helpers.ts";
26
26
 
27
27
  // ---------------------------------------------------------------------------
28
28
  // Extension
29
29
  // ---------------------------------------------------------------------------
30
30
 
31
- export default function modelEffortColors(pi: ExtensionAPI) {
31
+ export default function supiFooter(pi: ExtensionAPI) {
32
32
  let currentModel: unknown;
33
33
  let requestRender: (() => void) | undefined;
34
34