@lineman-io/mcp 2.3.0 → 2.4.2
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/.claude-plugin/plugin.json +1 -1
- package/README.md +44 -12
- package/dist/main.js +7 -1
- package/hooks/core/lineman-config.mjs +1 -1
- package/hooks/lineman-call.mjs +1 -1
- package/package.json +21 -2
- package/skills/telemetry/SKILL.md +58 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lineman",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.4.2",
|
|
4
4
|
"description": "AI-powered code assistant that uses a secondary LLM to handle data-heavy tasks — saves context window tokens on large-file reads, error classification, and build-output triage.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Lineman",
|
package/README.md
CHANGED
|
@@ -50,19 +50,42 @@ User config lives at `~/.goodex/lineman.json`:
|
|
|
50
50
|
|
|
51
51
|
```json
|
|
52
52
|
{
|
|
53
|
-
"
|
|
54
|
-
"
|
|
53
|
+
"dataApiUrl": "https://api-data.lineman.io",
|
|
54
|
+
"dataStreamApiUrl": "https://api-data-stream.lineman.io",
|
|
55
|
+
"controlApiUrl": "https://api-app.lineman.io",
|
|
56
|
+
"apiToken": "<set by /lineman:auth>",
|
|
55
57
|
"userId": "<set after auth>",
|
|
56
58
|
"tier": "free"
|
|
57
59
|
}
|
|
58
60
|
```
|
|
59
61
|
|
|
60
|
-
|
|
62
|
+
The three URLs map to the three customer-facing Cloud Run services in
|
|
63
|
+
the Lineman API split (see [ADR-0001](../../../docs/adr/0001-api-split.md)):
|
|
61
64
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
65
|
+
- `dataApiUrl` — sync inference (`/lineman/execute`, `/shape`, `/metrics`, `/hook-config`)
|
|
66
|
+
- `dataStreamApiUrl` — streamed inference (`/lineman/execute/stream`, SSE)
|
|
67
|
+
- `controlApiUrl` — auth (`/auth/device/*`, `/auth/verify`), usage, dashboard
|
|
68
|
+
|
|
69
|
+
The MCP picks between the data URLs per request based on whether the
|
|
70
|
+
task type is in `STREAMING_TASK_TYPES` (currently `triage_build_output`).
|
|
71
|
+
The legacy `serverUrl` field is still read for backwards compatibility
|
|
72
|
+
on machines that authed pre-split — new writes always populate the
|
|
73
|
+
explicit per-plane fields.
|
|
74
|
+
|
|
75
|
+
Environment variables take precedence over the on-disk config:
|
|
76
|
+
|
|
77
|
+
| Variable | Overrides | Purpose |
|
|
78
|
+
|----------|-----------|---------|
|
|
79
|
+
| `LINEMAN_DATA_API_URL` | `dataApiUrl` | Sync inference Cloud Run service |
|
|
80
|
+
| `LINEMAN_DATA_STREAM_API_URL` | `dataStreamApiUrl` | Streaming inference Cloud Run service |
|
|
81
|
+
| `LINEMAN_CONTROL_API_URL` | `controlApiUrl` | Auth + usage + dashboard Cloud Run service |
|
|
82
|
+
| `LINEMAN_API_TOKEN` | `apiToken` | Override the saved token (CI / staging) |
|
|
83
|
+
|
|
84
|
+
All three URL env vars are required to resolve. Missing any of them at
|
|
85
|
+
boot results in a fatal startup error naming the missing var. There is
|
|
86
|
+
**no** `LINEMAN_API_URL` fallback — the per-plane convention is locked
|
|
87
|
+
in ADR-0001 and silently collapsing to a single URL re-introduces the
|
|
88
|
+
fault lines the split exists to fix.
|
|
66
89
|
|
|
67
90
|
### Auth at use time
|
|
68
91
|
|
|
@@ -90,13 +113,22 @@ What we strip before send:
|
|
|
90
113
|
|
|
91
114
|
### Disabling telemetry
|
|
92
115
|
|
|
93
|
-
|
|
116
|
+
Two ways, in resolution order:
|
|
94
117
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
118
|
+
1. **`/lineman:telemetry off` from inside Claude Code** (recommended). Runs the `telemetry` skill, persists your preference to `~/.goodex/lineman.json::telemetryEnabled`. Restart your Claude Code session for the next MCP boot to pick it up. To re-enable, run `/lineman:telemetry on`.
|
|
119
|
+
|
|
120
|
+
2. **`LINEMAN_TELEMETRY` env var** (overrides the per-install setting). Useful for shared / regulated environments where the choice should be enforced by config-management rather than per-user.
|
|
121
|
+
|
|
122
|
+
```sh
|
|
123
|
+
export LINEMAN_TELEMETRY=off
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
Accepted values:
|
|
127
|
+
- `0`, `off`, `false`, `no` → telemetry disabled.
|
|
128
|
+
- `1`, `on`, `true`, `yes` → telemetry enabled (overrides the file setting too).
|
|
129
|
+
- Anything else / unset → fall through to the file setting / default.
|
|
98
130
|
|
|
99
|
-
|
|
131
|
+
In both cases the MCP skips `Sentry.init` entirely when disabled — no SDK loaded, no events emitted, no `install_id` sent. There's no silent degraded mode.
|
|
100
132
|
|
|
101
133
|
## Troubleshooting
|
|
102
134
|
|