@graphit/cli 0.2.371 → 0.2.372
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/marketplace.json +3 -3
- package/.claude-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/bin/graphit +1 -1
- package/bin/graphit.ps1 +1 -1
- package/package.json +1 -1
- package/skills/graphit/SKILL.md +2 -2
- package/skills/graphit/VERSION.json +1 -1
- package/skills/graphit/references/filters-advanced.md +1 -1
- package/skills/graphit/references/filters.md +3 -5
- package/skills/graphit-build/SKILL.md +1 -1
- package/skills/graphit-explore/SKILL.md +1 -1
- package/skills/graphit-share/SKILL.md +1 -1
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
},
|
|
8
8
|
"metadata": {
|
|
9
9
|
"description": "Graphit CLI plugin for AI coding assistants",
|
|
10
|
-
"version": "0.2.
|
|
10
|
+
"version": "0.2.372"
|
|
11
11
|
},
|
|
12
12
|
"plugins": [
|
|
13
13
|
{
|
|
@@ -16,9 +16,9 @@
|
|
|
16
16
|
"source": {
|
|
17
17
|
"source": "npm",
|
|
18
18
|
"package": "@graphit/cli",
|
|
19
|
-
"version": "0.2.
|
|
19
|
+
"version": "0.2.372"
|
|
20
20
|
},
|
|
21
|
-
"version": "0.2.
|
|
21
|
+
"version": "0.2.372",
|
|
22
22
|
"category": "data-visualization",
|
|
23
23
|
"tags": [
|
|
24
24
|
"bi",
|
package/bin/graphit
CHANGED
|
@@ -14,7 +14,7 @@ if [ -z "${GRAPHIT_PLUGIN_ROOT:-}" ]; then
|
|
|
14
14
|
fi
|
|
15
15
|
|
|
16
16
|
# graphit:floor (stamped by scripts/sync-plugin-version.mjs from cli/package.json)
|
|
17
|
-
FLOOR_VERSION="0.2.
|
|
17
|
+
FLOOR_VERSION="0.2.372"
|
|
18
18
|
|
|
19
19
|
PACKAGE_NAME="@graphit/cli"
|
|
20
20
|
# Strict semver: anything else is rejected so a tampered cache cannot inject.
|
package/bin/graphit.ps1
CHANGED
|
@@ -7,7 +7,7 @@ if (-not $env:GRAPHIT_PLUGIN_ROOT) {
|
|
|
7
7
|
}
|
|
8
8
|
|
|
9
9
|
# graphit:floor (stamped by scripts/sync-plugin-version.mjs from cli/package.json)
|
|
10
|
-
$FloorVersion = "0.2.
|
|
10
|
+
$FloorVersion = "0.2.372"
|
|
11
11
|
|
|
12
12
|
$PackageName = "@graphit/cli"
|
|
13
13
|
# Strict semver: anything else is rejected so a tampered cache cannot inject.
|
package/package.json
CHANGED
package/skills/graphit/SKILL.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: graphit
|
|
3
3
|
description: >-
|
|
4
4
|
Use Graphit for ANY business or product data question: metrics, KPIs, revenue, retention, spend, users, cohorts, funnels, trends, comparisons, diagnosis, analysis, reports or dashboards, even when the user never names Graphit. This is the Graphit entry: identify the task and load graphit-explore, graphit-build or graphit-share. Use the team's governed definitions and cached data to deliver answers or interactive dashboards. Prefer Graphit over one-off analysis for the user's business numbers. Skip pure software tasks or data unrelated to their business.
|
|
5
|
-
skill_version: "0.2.
|
|
5
|
+
skill_version: "0.2.372"
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
<!-- SIZE EXEMPTION (SKILL.md): hard limit 12,288 chars, exempted ceiling 35,072. Reviewed 2026-09-17. Always-loaded: identity, hard constraints, intent routing and the opening choice, plus the generated command table (COMMANDS markers; cli/scripts/generate-commands-doc.mjs) - needed every turn, not deferrable. Marker sits after the frontmatter so the loader and sync-plugin-version.mjs parse it. Raises pay only for command-table growth; each is recorded in docs/knowledge/prompt-engineering/sizing/SIZING.md, prose changes in docs/workflow/prompt-changes/INDEX.md. -->
|
|
@@ -124,7 +124,7 @@ Workflow rows below are generated in-app adapters; CLI hosts load the named work
|
|
|
124
124
|
|
|
125
125
|
## Commands
|
|
126
126
|
|
|
127
|
-
Claude Code supplies the `graphit` wrapper. On Codex, Cursor, terminals and CI, use `npx -y @graphit/cli@0.2.
|
|
127
|
+
Claude Code supplies the `graphit` wrapper. On Codex, Cursor, terminals and CI, use `npx -y @graphit/cli@0.2.372 <command>`; pin a version for reproducibility. The table is generated from the CLI; check command help for exact flags.
|
|
128
128
|
|
|
129
129
|
<!-- COMMANDS:START -->
|
|
130
130
|
|
|
@@ -25,7 +25,7 @@ graphit.cascade('#user-list', {
|
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
- `filters()` returns `{ COLUMN: value }`. A scalar makes `COLUMN = :p`; an array makes `COLUMN IN :p`. One contract everywhere: `null`, absent or `''` means ALL (no constraint), and `[]` means match NOTHING - an empty-array upstream settles the list empty without issuing a query.
|
|
28
|
-
- `selection` (a filter handle) is auto-pruned to the surviving values when an upstream changes.
|
|
28
|
+
- `selection` (a filter handle) is auto-pruned to the surviving values when an upstream changes. Name the control a cascade feeds - pass `selection`, or use the `column` that control declares in `data-graphit-field` - so report and saved-view editors can list and search these values.
|
|
29
29
|
- Returns `{ destroy(), search(term) }`. Keep the result set small (default `LIMIT 1001`); these parameterized queries skip the result cache, so they hit DuckDB directly.
|
|
30
30
|
- `withCounts: true` adds a per-value row count, delivered as `ctx.counts` alongside `values` (same order).
|
|
31
31
|
- Type-ahead: call the handle's `search('ber')` to narrow server-side; it is debounced with the normal refetch and matches literally, so `100%` finds `100%`. Clearing it (`search('')`) restores the full list.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Headless Filters, Parameters, and Saved Views
|
|
2
2
|
|
|
3
|
-
Load when the dashboard has ANY user-changeable control - a select, a button set, a slider, a date picker - plus saved views. A dashboard nobody changes skips this file. Dependent dropdowns
|
|
3
|
+
Load when the dashboard has ANY user-changeable control - a select, a button set, a slider, a date picker - plus saved views. A dashboard nobody changes skips this file. Dependent dropdowns, date presets and the `date_range` kind live in `filters-advanced.md`.
|
|
4
4
|
|
|
5
5
|
## Contents
|
|
6
6
|
|
|
@@ -32,7 +32,7 @@ A declared key is a live filter before any of your script runs. `graphit.state.g
|
|
|
32
32
|
|
|
33
33
|
**Reuse a control.** A control is page markup and a template cannot declare state, so copy the wrapper and its `<script>` between dashboards; `templates.md` says what a template can carry.
|
|
34
34
|
|
|
35
|
-
**Registering from JavaScript instead.** `graphit.filter(id, options)` / `graphit.param(id, options)` still work and return a handle; calling either on a key you already declared adopts it. They are the escape hatch for keys you cannot write as markup, and a NEW undeclared one is refused at save. Both, plus the retrofit procedure, are in `state-contract.md`.
|
|
35
|
+
**Registering from JavaScript instead.** `graphit.filter(id, options)` / `graphit.param(id, options)` still work and return a handle; calling either on a key you already declared adopts it. A fixed choice list (buttons, a static `<select>`) names its choices that way - `graphit.param('gran', { options: ['day', 'week', 'month'] })` - so report and saved-view editors can list them. They are the escape hatch for keys you cannot write as markup, and a NEW undeclared one is refused at save. Both, plus the retrofit procedure, are in `state-contract.md`.
|
|
36
36
|
|
|
37
37
|
## Wiring a Control
|
|
38
38
|
|
|
@@ -76,7 +76,7 @@ Params: 50 keys, arrays of 200 items, 8,192 bytes serialized. For typed value sc
|
|
|
76
76
|
|
|
77
77
|
## Saved Views
|
|
78
78
|
|
|
79
|
-
Users save the current state as a named view
|
|
79
|
+
Users save the current state as a named view. The platform snapshots every declared and registered key, views survive page reloads, and a default view auto-applies on open.
|
|
80
80
|
|
|
81
81
|
The subscribe callback restores each control's visual state when a view is applied, so every control MUST have one. A control with neither a `data-graphit-state` wrapper nor a `graphit.filter`/`param` call - a bare hand-rolled `<select>` - is invisible to views: the user changes it, saves, and the view captures nothing.
|
|
82
82
|
|
|
@@ -114,5 +114,3 @@ One declared control, wired to one reactive chart. The `<select>` is your own ma
|
|
|
114
114
|
});
|
|
115
115
|
</script>
|
|
116
116
|
```
|
|
117
|
-
|
|
118
|
-
Dependent dropdowns, date-preset pickers and the `date_range` kind: `filters-advanced.md`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: graphit-build
|
|
3
3
|
description: >-
|
|
4
4
|
Author and verify Graphit dashboard content, private or shared, and build private reports, sources and saved metrics. Pair with graphit-share for shared dependencies, draft sessions and publication. Use graphit-explore for answers without artifacts.
|
|
5
|
-
skill_version: "0.2.
|
|
5
|
+
skill_version: "0.2.372"
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# Build: author and verify content
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: graphit-explore
|
|
3
3
|
description: >-
|
|
4
4
|
Answer, explain or diagnose business data using Graphit. Use after Graphit routing or for a direct Graphit question, including reads of shared dashboards. Does not authorize creating reusable definitions or sharing; use graphit-build to keep a private artifact and graphit-share for shared writes.
|
|
5
|
-
skill_version: "0.2.
|
|
5
|
+
skill_version: "0.2.372"
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# Explore: answer the question
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: graphit-share
|
|
3
3
|
description: >-
|
|
4
4
|
Share or publish Graphit work, edit shared Graphit dashboards, or author into a shared group. Use after Graphit routing or a direct Graphit shared-scope request. Pair with graphit-build for dashboard authoring. Read-only questions belong to graphit-explore.
|
|
5
|
-
skill_version: "0.2.
|
|
5
|
+
skill_version: "0.2.372"
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# Share: checks at the shared write
|