@sangyaahub/pi-marg 1.0.4 → 1.0.5
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/.omp-plugin/marketplace.json +2 -2
- package/CHANGELOG.md +5 -0
- package/MODEL-SETUP.md +21 -0
- package/README.md +88 -2
- package/package.json +1 -1
- package/scripts/install.sh +1 -1
- package/scripts/validate.sh +1 -1
|
@@ -7,14 +7,14 @@
|
|
|
7
7
|
},
|
|
8
8
|
"metadata": {
|
|
9
9
|
"description": "PiMarg — a governed development path for Pi Agent and Oh My Pi.",
|
|
10
|
-
"version": "1.0.
|
|
10
|
+
"version": "1.0.5"
|
|
11
11
|
},
|
|
12
12
|
"plugins": [
|
|
13
13
|
{
|
|
14
14
|
"name": "pi-marg",
|
|
15
15
|
"description": "Intent-led development workflow with live A/B/C/D routing, capability detection, verification, and approval gates.",
|
|
16
16
|
"source": "./",
|
|
17
|
-
"version": "1.0.
|
|
17
|
+
"version": "1.0.5",
|
|
18
18
|
"author": {
|
|
19
19
|
"name": "Sangyaa",
|
|
20
20
|
"email": "contact@sangyaa.co"
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.0.5 — 2026-09-26
|
|
4
|
+
|
|
5
|
+
- Documented how to register CheaperInference in Oh My Pi so Kimi and GLM models can be chosen at every A/B/C/D stage.
|
|
6
|
+
- Recorded the distinct-model rule and a high/low backup example for that provider.
|
|
7
|
+
|
|
3
8
|
## 1.0.4 — 2026-09-17
|
|
4
9
|
|
|
5
10
|
- Added two runtime-only recovery choices: a strong **high** backup followed by an economical **low** backup.
|
package/MODEL-SETUP.md
CHANGED
|
@@ -49,6 +49,27 @@ omp models
|
|
|
49
49
|
|
|
50
50
|
The OMP adapter reads `ctx.models.list()`, which supplies authenticated and enabled models, and activates an exact catalog entry with `pi.setModel()`.
|
|
51
51
|
|
|
52
|
+
## CheaperInference example
|
|
53
|
+
|
|
54
|
+
This is one custom Oh My Pi provider, not a pinned PiMarg default. After it is authenticated, every model below is selectable at A, B, C, and D. A and C must still be different underlying models, and B and D must still be different underlying models.
|
|
55
|
+
|
|
56
|
+
Create a CheaperInference key (`ci_live_...`) and save it as `CHEAPER_INFERENCE_API_KEY` in `~/.omp/agent/.env`. Point `providers.cheaperinference.apiKey` at that variable name. The base URL is `https://api.cheaperinference.com/v1`. Confirm ids with `GET /v1/models` before use, because the catalog can change.
|
|
57
|
+
|
|
58
|
+
Register `kimi-k3`, `glm-5.3`, `glm-5.3-flash`, and `glm-5.2` under that provider, then verify with `omp models find cheaperinference`. The copy-paste provider block is in the README section [CheaperInference (Kimi and GLM)](README.md#cheaperinference-kimi-and-glm).
|
|
59
|
+
|
|
60
|
+
One assignment that satisfies the distinct-model rule:
|
|
61
|
+
|
|
62
|
+
| Stage | Selector |
|
|
63
|
+
|---|---|
|
|
64
|
+
| A | `cheaperinference/kimi-k3` |
|
|
65
|
+
| C | `cheaperinference/glm-5.3` |
|
|
66
|
+
| B | `cheaperinference/glm-5.3` |
|
|
67
|
+
| D | `cheaperinference/kimi-k3` |
|
|
68
|
+
| high backup | `cheaperinference/kimi-k3` |
|
|
69
|
+
| low backup | `cheaperinference/glm-5.3-flash` |
|
|
70
|
+
|
|
71
|
+
Any of those four models can be chosen for any stage. Calls spend CheaperInference wallet balance.
|
|
72
|
+
|
|
52
73
|
## Selection workflow
|
|
53
74
|
|
|
54
75
|
1. Run `/pi-marg` for the full native intake, or `/auto-models choose` to change saved models.
|
package/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
5
|
<p align="center">
|
|
6
|
-
<a href="https://github.com/sangyaahub/pi-marg/releases"><img alt="Version 1.0.
|
|
6
|
+
<a href="https://github.com/sangyaahub/pi-marg/releases"><img alt="Version 1.0.5" src="https://img.shields.io/badge/version-1.0.5-0451F7"></a>
|
|
7
7
|
<a href="LICENSE"><img alt="MIT License" src="https://img.shields.io/badge/license-MIT-C27B1A"></a>
|
|
8
8
|
<a href="https://pi.dev/packages?name=pi-marg"><img alt="Pi package" src="https://img.shields.io/badge/Pi-package-0338A8"></a>
|
|
9
9
|
<a href="https://omp.sh"><img alt="Oh My Pi plugin" src="https://img.shields.io/badge/OMP-plugin-021E5C"></a>
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
|
|
12
12
|
# PiMarg
|
|
13
13
|
|
|
14
|
-
**Version 1.0.
|
|
14
|
+
**Version 1.0.5 · MIT licensed · Pi Agent + Oh My Pi · by [Sangyaa](https://sangyaa.co)**
|
|
15
15
|
|
|
16
16
|
PiMarg turns an ordinary prompt into a governed development path. It identifies the work boundary, selects one engineering method, discovers the models and tools the active runtime really provides, separates thinking from execution, records evidence, and stops before protected actions.
|
|
17
17
|
|
|
@@ -124,6 +124,92 @@ Authenticate providers using the active runtime's normal login flow, then run:
|
|
|
124
124
|
|
|
125
125
|
The router shows every model in the live authenticated and enabled registry. Stage-appropriate choices appear first and all other enabled choices remain selectable. It does not promise that a subscription route is free or unlimited. See [MODEL-SETUP.md](MODEL-SETUP.md).
|
|
126
126
|
|
|
127
|
+
### CheaperInference (Kimi and GLM)
|
|
128
|
+
|
|
129
|
+
Oh My Pi does not ship [CheaperInference](https://cheaperinference.com). Register it once, then `/auto-models choose` and `/pi-marg` offer its models at every stage. A and C must be different models. B and D must be different models.
|
|
130
|
+
|
|
131
|
+
1. Create a dashboard key. Current keys begin with `ci_live_`.
|
|
132
|
+
2. Store it in `~/.omp/agent/.env`, which Oh My Pi loads on startup:
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
CHEAPER_INFERENCE_API_KEY=ci_live_your_key
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
3. Add the provider to `~/.omp/agent/models.yml`. `apiKey` is the environment-variable name, not the secret. Confirm the live ids before relying on this list:
|
|
139
|
+
|
|
140
|
+
```bash
|
|
141
|
+
curl https://api.cheaperinference.com/v1/models \
|
|
142
|
+
-H "Authorization: Bearer $CHEAPER_INFERENCE_API_KEY"
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
```yaml
|
|
146
|
+
providers:
|
|
147
|
+
cheaperinference:
|
|
148
|
+
baseUrl: https://api.cheaperinference.com/v1
|
|
149
|
+
api: openai-completions
|
|
150
|
+
apiKey: CHEAPER_INFERENCE_API_KEY
|
|
151
|
+
authHeader: true
|
|
152
|
+
compat:
|
|
153
|
+
supportsStore: false
|
|
154
|
+
supportsDeveloperRole: false
|
|
155
|
+
supportsReasoningEffort: true
|
|
156
|
+
supportsStrictMode: false
|
|
157
|
+
toolStrictMode: none
|
|
158
|
+
thinkingFormat: openai
|
|
159
|
+
reasoningContentField: reasoning_content
|
|
160
|
+
requiresReasoningContentForToolCalls: true
|
|
161
|
+
maxTokensField: max_tokens
|
|
162
|
+
reasoningEffortMap:
|
|
163
|
+
xhigh: max
|
|
164
|
+
max: max
|
|
165
|
+
models:
|
|
166
|
+
- id: kimi-k3
|
|
167
|
+
name: Kimi K3
|
|
168
|
+
reasoning: true
|
|
169
|
+
input: [text, image]
|
|
170
|
+
contextWindow: 1000000
|
|
171
|
+
maxTokens: 131072
|
|
172
|
+
tokenizer: kimi-k2
|
|
173
|
+
- id: glm-5.3
|
|
174
|
+
name: GLM 5.3
|
|
175
|
+
reasoning: true
|
|
176
|
+
input: [text]
|
|
177
|
+
contextWindow: 1000000
|
|
178
|
+
maxTokens: 131072
|
|
179
|
+
tokenizer: glm5
|
|
180
|
+
- id: glm-5.3-flash
|
|
181
|
+
name: GLM 5.3 Flash
|
|
182
|
+
reasoning: true
|
|
183
|
+
input: [text, image]
|
|
184
|
+
contextWindow: 1048576
|
|
185
|
+
maxTokens: 131072
|
|
186
|
+
tokenizer: glm5
|
|
187
|
+
- id: glm-5.2
|
|
188
|
+
name: GLM 5.2
|
|
189
|
+
reasoning: true
|
|
190
|
+
input: [text]
|
|
191
|
+
contextWindow: 1048576
|
|
192
|
+
maxTokens: 131072
|
|
193
|
+
tokenizer: glm5
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
4. Check that Oh My Pi can see them, then pick any of them at each stage:
|
|
197
|
+
|
|
198
|
+
```bash
|
|
199
|
+
omp models find cheaperinference
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
| Stage | One valid pick |
|
|
203
|
+
|---|---|
|
|
204
|
+
| A discover | `cheaperinference/kimi-k3` |
|
|
205
|
+
| C plan review | `cheaperinference/glm-5.3` |
|
|
206
|
+
| B build | `cheaperinference/glm-5.3` |
|
|
207
|
+
| D code review | `cheaperinference/kimi-k3` |
|
|
208
|
+
| high backup | `cheaperinference/kimi-k3` |
|
|
209
|
+
| low backup | `cheaperinference/glm-5.3-flash` |
|
|
210
|
+
|
|
211
|
+
Swap any row. The picker rejects the run only when A equals C, or B equals D. Recovery stays off until both backups are saved. This route bills a wallet on each call. The same steps are in [MODEL-SETUP.md](MODEL-SETUP.md).
|
|
212
|
+
|
|
127
213
|
## Start a workflow
|
|
128
214
|
|
|
129
215
|
From a terminal in the repository you want to work on, run either:
|
package/package.json
CHANGED
package/scripts/install.sh
CHANGED
|
@@ -71,4 +71,4 @@ if [[ "${runtime}" == "omp" || "${runtime}" == "both" ]]; then
|
|
|
71
71
|
omp plugin install --scope user pi-marg@pi-marg-marketplace
|
|
72
72
|
fi
|
|
73
73
|
|
|
74
|
-
echo "PiMarg v1.0.
|
|
74
|
+
echo "PiMarg v1.0.5 installed for ${runtime}. Start a fresh runtime session, then run /pi-marg."
|
package/scripts/validate.sh
CHANGED
|
@@ -45,7 +45,7 @@ bun -e '
|
|
|
45
45
|
const packageJson = await Bun.file("package.json").json();
|
|
46
46
|
const marketplace = await Bun.file(".omp-plugin/marketplace.json").json();
|
|
47
47
|
if (packageJson.name !== "@sangyaahub/pi-marg") throw new Error("Unexpected package name");
|
|
48
|
-
if (packageJson.version !== "1.0.
|
|
48
|
+
if (packageJson.version !== "1.0.5") throw new Error("package.json must be v1.0.5");
|
|
49
49
|
if (packageJson.license !== "MIT") throw new Error("package.json must declare MIT");
|
|
50
50
|
if (packageJson.author !== "Sangyaa") throw new Error("Unexpected package author");
|
|
51
51
|
if (!packageJson.keywords?.includes("pi-package")) throw new Error("Pi catalog keyword is missing");
|