fullstackgtm 0.24.0 → 0.25.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/CHANGELOG.md +11 -0
- package/README.md +7 -1
- package/llms.txt +1 -0
- package/package.json +2 -1
- package/skills/fullstackgtm/SKILL.md +87 -0
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,17 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
|
5
5
|
and the project adheres to [Semantic Versioning](https://semver.org/).
|
|
6
6
|
The path to 1.0 is planned in [docs/roadmap-to-1.0.md](./docs/roadmap-to-1.0.md).
|
|
7
7
|
|
|
8
|
+
## [0.25.0] — 2026-06-12
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **Agent skill distribution** — `npx skills add fullstackgtm/core` installs
|
|
13
|
+
[skills/fullstackgtm/SKILL.md](./skills/fullstackgtm/SKILL.md) into any
|
|
14
|
+
skills-compatible agent (Claude Code, Cursor, Codex, …): a compact operating
|
|
15
|
+
guide covering the governed audit → suggest → approve → apply loop, the
|
|
16
|
+
non-negotiable safety invariants, the verb map, and the credential ladder.
|
|
17
|
+
Documentation only — no runtime surface changes.
|
|
18
|
+
|
|
8
19
|
## [0.24.0] — 2026-06-12
|
|
9
20
|
|
|
10
21
|
### Added
|
package/README.md
CHANGED
|
@@ -27,7 +27,13 @@ Requires Node 20+. The core has zero runtime dependencies; only the MCP server e
|
|
|
27
27
|
npx fullstackgtm doctor # verify the install: node version, credentials, MCP peers, next step
|
|
28
28
|
```
|
|
29
29
|
|
|
30
|
-
Installing for an AI agent?
|
|
30
|
+
Installing for an AI agent? The fastest path is the agent skill:
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
npx skills add fullstackgtm/core # Claude Code, Cursor, Codex, and other skills-compatible agents
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
It installs a compact operating guide ([skills/fullstackgtm/SKILL.md](./skills/fullstackgtm/SKILL.md)) — the governed loop, the safety invariants, and the verb map — so the agent reaches for plans instead of raw writes. For a deterministic install-and-verify script with expected outputs, hand it [INSTALL_FOR_AGENTS.md](./INSTALL_FOR_AGENTS.md). A documentation map lives in [llms.txt](./llms.txt).
|
|
31
37
|
|
|
32
38
|
## Five-minute loop
|
|
33
39
|
|
package/llms.txt
CHANGED
|
@@ -14,6 +14,7 @@ at/above `--fail-on`.
|
|
|
14
14
|
|
|
15
15
|
- [README](https://github.com/fullstackgtm/core/blob/main/README.md): install, five-minute loop, auth ladder, MCP setup, programmatic use
|
|
16
16
|
- [INSTALL_FOR_AGENTS](https://github.com/fullstackgtm/core/blob/main/INSTALL_FOR_AGENTS.md): deterministic install-and-verify steps with expected outputs
|
|
17
|
+
- [Agent skill](https://github.com/fullstackgtm/core/blob/main/skills/fullstackgtm/SKILL.md): compact operating guide, installable via `npx skills add fullstackgtm/core`
|
|
17
18
|
- [API reference](https://github.com/fullstackgtm/core/blob/main/docs/api.md): semver-covered surfaces — canonical model, rule interface, plan/apply contract, connector contract, config, CLI, MCP tools
|
|
18
19
|
- [CRM-health lifecycle](https://github.com/fullstackgtm/core/blob/main/docs/crm-health-lifecycle.md): the Prevent → Detect → Remediate → Verify/Attribute model; no-new-dupes design
|
|
19
20
|
- [CHANGELOG](https://github.com/fullstackgtm/core/blob/main/CHANGELOG.md): release history
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fullstackgtm",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.25.0",
|
|
4
4
|
"description": "Open-source agentic GTM ops framework: canonical GTM data model, pluggable deterministic audits, reviewable dry-run patch plans, approval-gated write-back with conflict detection, and cross-system entity resolution. HubSpot, Salesforce, and Stripe connectors included.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Full Stack GTM",
|
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
"CHANGELOG.md",
|
|
31
31
|
"INSTALL_FOR_AGENTS.md",
|
|
32
32
|
"llms.txt",
|
|
33
|
+
"skills",
|
|
33
34
|
"LICENSE"
|
|
34
35
|
],
|
|
35
36
|
"scripts": {
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: fullstackgtm
|
|
3
|
+
description: Govern CRM/GTM data operations through the fullstackgtm CLI — read-only hygiene audits, reviewable dry-run patch plans, deterministic value suggestions, and approval-gated write-back to HubSpot and Salesforce. Use when asked to audit, clean, dedupe, enrich, bulk-update, reassign, or write to a CRM; to gate record creation against duplicates; to parse, score, or link sales call transcripts; to map a competitive category; or to schedule any of the above. Never write to a CRM directly when this skill is available.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# fullstackgtm — plan/apply for your GTM stack
|
|
7
|
+
|
|
8
|
+
Think `terraform plan` for the CRM: you may *read* everything, but every
|
|
9
|
+
proposed change is a typed patch operation — object, field, before, after,
|
|
10
|
+
reason, risk — that a human approves before any provider write happens.
|
|
11
|
+
Connectors: HubSpot (read/write), Salesforce (read/write), Stripe (read-only).
|
|
12
|
+
Requires Node 20+; every command below works zero-install via `npx`.
|
|
13
|
+
|
|
14
|
+
## Non-negotiable invariants
|
|
15
|
+
|
|
16
|
+
- `audit` and `suggest` never mutate anything. `apply` writes ONLY operation
|
|
17
|
+
ids explicitly passed via `--approve` (or a plan a human approved with
|
|
18
|
+
`plans approve`). Do not attempt to bypass this; surface the plan instead.
|
|
19
|
+
- Operations whose value is a human decision carry `requires_human_*`
|
|
20
|
+
placeholders and are refused without a concrete `--value <opId>=<v>`
|
|
21
|
+
override. Never guess values — chain `suggest` (deterministic, evidence-
|
|
22
|
+
backed) and leave `low`/`create`/`none`-confidence entries to the human.
|
|
23
|
+
- Secrets are never accepted as argv flags: env vars or stdin only
|
|
24
|
+
(`echo "$TOKEN" | fullstackgtm login hubspot`). Set `FSGTM_NO_BROWSER=1`
|
|
25
|
+
in headless environments.
|
|
26
|
+
- Exit codes everywhere: `0` success, `1` error, `2` findings/matches at or
|
|
27
|
+
above the threshold (gate-shaped for scripts).
|
|
28
|
+
|
|
29
|
+
## Verify the install, then prove the pipeline with zero credentials
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
npx fullstackgtm doctor --json # node.ok: true + package.version
|
|
33
|
+
npx fullstackgtm audit --demo --json # dry-run plan over a seeded messy CRM
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## The governed loop (the core of everything)
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
fullstackgtm audit --provider hubspot --save # read-only → saved plan id
|
|
40
|
+
fullstackgtm suggest --plan-id <id> --provider hubspot --out suggestions.json
|
|
41
|
+
fullstackgtm plans approve <id> --values-from suggestions.json # high-confidence only
|
|
42
|
+
fullstackgtm apply --plan-id <id> --provider hubspot # writes ONLY approved ops
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Credentials resolve in order: `--token-env <NAME>` → ambient env
|
|
46
|
+
(`HUBSPOT_ACCESS_TOKEN`; `SALESFORCE_ACCESS_TOKEN` + `SALESFORCE_INSTANCE_URL`;
|
|
47
|
+
`STRIPE_SECRET_KEY`) → stored `fullstackgtm login <provider>` → broker pairing.
|
|
48
|
+
In a sandbox prefer the first two. LLM-powered verbs (`call parse`, `call
|
|
49
|
+
score`, `market classify`) take `ANTHROPIC_API_KEY`/`OPENAI_API_KEY`, or use
|
|
50
|
+
their deterministic/worksheet fallbacks — the CLI never prompts when
|
|
51
|
+
non-interactive.
|
|
52
|
+
|
|
53
|
+
## Verb map
|
|
54
|
+
|
|
55
|
+
| Verb | What it does |
|
|
56
|
+
| --- | --- |
|
|
57
|
+
| `resolve <contact\|account\|deal>` | Create gate: exit 0 = safe to create, 2 = exists/ambiguous — never blind-create |
|
|
58
|
+
| `dedupe <object> --key <domain\|email\|name>` | One merge op per duplicate group, deterministic survivor; merges are irreversible |
|
|
59
|
+
| `bulk-update <object> --where … --set\|--archive\|--create-task` | Filtered dry-run plan; filter re-verified per record at apply time |
|
|
60
|
+
| `reassign --from <owner> --to <owner>` | Ownership handoff plans per object type |
|
|
61
|
+
| `fix --rule <id>` | audit one rule → suggest → approve at the confidence bar → apply only with `--yes` |
|
|
62
|
+
| `call parse\|score\|link\|plan` | Transcripts → evidence-quoted insights, rubric scorecards, deal linking, governed next-step writes |
|
|
63
|
+
| `enrich append\|refresh\|ingest\|status` | Governed enrichment (Apollo pull / Clay ingest), fill-blanks-only plans |
|
|
64
|
+
| `market capture\|classify\|worksheet\|observe\|fronts\|axes\|overlay\|scale\|report\|refresh` | Competitive category map; evidence quotes verified verbatim against stored captures |
|
|
65
|
+
| `schedule add\|install\|run\|status` | Horizontal cron; read/plan-side allowlist only — scheduling NEVER auto-approves |
|
|
66
|
+
| `plans list\|approve` / `snapshot` / `rules` / `doctor` | Plan lifecycle, raw snapshots, rule registry, machine state |
|
|
67
|
+
|
|
68
|
+
All write-shaped verbs produce plans; none writes outside approve → apply.
|
|
69
|
+
Add `--json` for machine-readable output on any command.
|
|
70
|
+
|
|
71
|
+
## MCP server (alternative surface, same gates)
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
npx -y -p fullstackgtm -p @modelcontextprotocol/sdk -p zod fullstackgtm-mcp
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Tools over stdio: `fullstackgtm_audit` (read-only), `fullstackgtm_rules`,
|
|
78
|
+
`fullstackgtm_suggest`, `fullstackgtm_call_parse`,
|
|
79
|
+
`fullstackgtm_apply` (requires `approvedOperationIds`),
|
|
80
|
+
`fullstackgtm_resolve`, `fullstackgtm_market_worksheet`,
|
|
81
|
+
`fullstackgtm_market_observe`.
|
|
82
|
+
|
|
83
|
+
## Going deeper
|
|
84
|
+
|
|
85
|
+
- [llms.txt](https://github.com/fullstackgtm/core/blob/main/llms.txt) — the full invariant map per layer (calls, market, write verbs, enrich, schedule)
|
|
86
|
+
- [INSTALL_FOR_AGENTS.md](https://github.com/fullstackgtm/core/blob/main/INSTALL_FOR_AGENTS.md) — deterministic install-and-verify with expected outputs
|
|
87
|
+
- [docs/api.md](https://github.com/fullstackgtm/core/blob/main/docs/api.md) — semver-covered surfaces: canonical model, rule interface, plan/apply contract, connectors, config, CLI, MCP
|