saasfunnels 0.2.3 → 0.3.1
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 +20 -6
- package/dist/library.js +2 -2
- package/dist/saasfunnels.js +212401 -322
- package/dist/types/feature-setup.d.ts +7 -0
- package/dist/types/identity.d.ts +1 -1
- package/dist/types/mcp.d.ts +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -10,12 +10,16 @@ This repository contains only the MIT-licensed CLI and its bounded runtime contr
|
|
|
10
10
|
|
|
11
11
|
## Install
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
Start in your app repository:
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
-
|
|
16
|
+
npx --yes saasfunnels@latest setup
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
+
The explicit version tag avoids running an older project-local CLI. Setup asks where developer access is saved (Doppler or `.env.local`) when needed, requests approval before uploading findings, and shows each discovery stage. It never prints keys, rewrites env files, deploys your app, or approves inferred plans. Connect Stripe and create app credentials in the web Setup first. `setup run` remains a compatible entry point.
|
|
20
|
+
|
|
21
|
+
For scripts, use `--env-file .env.local --send --non-interactive`, or inject `SAASFUNNELS_API_KEY` from your secret manager. Without explicit approval, non-interactive runs stop without uploading. Run `setup --help` for setup-only guidance. Runtime implementation and payment verification remain in the web Setup.
|
|
22
|
+
|
|
19
23
|
## Use
|
|
20
24
|
|
|
21
25
|
```bash
|
|
@@ -37,9 +41,9 @@ saasfunnels plans handoff --integration-id <id> \
|
|
|
37
41
|
prices. Files that reference a Stripe price are reported as evidence; files that
|
|
38
42
|
only look commercial by name and content are reported separately as guesses.
|
|
39
43
|
Nothing leaves the machine until `.saasfunnels/plan-sources.json` lists the files
|
|
40
|
-
and `plans handoff --send` is run
|
|
41
|
-
|
|
42
|
-
|
|
44
|
+
and `plans handoff --send` is run. The CLI extracts normalized mapping evidence
|
|
45
|
+
locally; source contents stay on your machine. Commit the approval file so the
|
|
46
|
+
approved set is reviewable.
|
|
43
47
|
|
|
44
48
|
### GitHub Action
|
|
45
49
|
|
|
@@ -51,7 +55,7 @@ so the approved set is reviewable.
|
|
|
51
55
|
discovery-roots: app,lib
|
|
52
56
|
```
|
|
53
57
|
|
|
54
|
-
On a pull request the
|
|
58
|
+
The Action uploads an existing feature manifest; it does not freshly scan application source. On a pull request the upload is a `candidate`: the result is compared
|
|
55
59
|
against the branch's baseline and discarded. Only the default branch advances
|
|
56
60
|
the lineage. Changing `discovery-roots` starts a new lineage, so drift is
|
|
57
61
|
measured against a comparable scan rather than a wider or narrower one.
|
|
@@ -91,3 +95,13 @@ The package allowlist is enforced as `LICENSE`, `README.md`, `package.json`, the
|
|
|
91
95
|
Documentation: https://docs.saasfunnels.ai/developer-tools/saasfunnels-cli
|
|
92
96
|
|
|
93
97
|
Support: support@saasfunnels.ai
|
|
98
|
+
|
|
99
|
+
### Guided application discovery
|
|
100
|
+
|
|
101
|
+
Use `saasfunnels setup run` from the application repository after creating app credentials in Setup. Load `SAASFUNNELS_API_KEY` from **Developer setup access** into the local process environment. Its scopes are `developer:read` and `features:write`; it is not a browser or payment-administration key.
|
|
102
|
+
|
|
103
|
+
The command asks before uploading structured discovery proposals. `--send` provides explicit non-interactive approval. It coordinates features, pricing extraction, and plan branches, reports progress, and waits for the Stripe catalog. Run `saasfunnels setup run --resume` after an interruption. Existing accepted stages and customer review decisions are preserved.
|
|
104
|
+
|
|
105
|
+
If extraction is unsupported, review a `.saasfunnels/setup-pricing.json` file with `{ "plans": [{ "key": "pro", "name": "Pro", "features": { "export": true }, "prices": [{ "key": "price_ACTUAL_ID" }] }] }`, then resume. Use real identifiers from the connected merchant. Raw source files are never uploaded by guided setup or the pricing handoff.
|
|
106
|
+
|
|
107
|
+
The command does not implement arbitrary payment code, approve feature access, or verify transactions. Complete **Review and verify** in Setup after deploying the runtime and payment integration. Requires the server's guided setup API release.
|
package/dist/library.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createRequire as __saasfunnelsCreateRequire } from "node:module"; const require = __saasfunnelsCreateRequire(import.meta.url);
|
|
1
|
+
import { createRequire as __saasfunnelsCreateRequire } from "node:module"; const require = __saasfunnelsCreateRequire(import.meta.url); const __filename = new URL(import.meta.url).pathname; const __dirname = require("node:path").dirname(__filename);
|
|
2
2
|
var __create = Object.create;
|
|
3
3
|
var __defProp = Object.defineProperty;
|
|
4
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -24264,7 +24264,7 @@ function validateFeatureCatalogManifest(value) {
|
|
|
24264
24264
|
|
|
24265
24265
|
// src/identity.ts
|
|
24266
24266
|
var SAASFUNNELS_CLI_NAME = "saasfunnels";
|
|
24267
|
-
var SAASFUNNELS_CLI_VERSION = "0.
|
|
24267
|
+
var SAASFUNNELS_CLI_VERSION = "0.3.1";
|
|
24268
24268
|
var SAASFUNNELS_PRODUCT_NAME = "SaaSFunnels";
|
|
24269
24269
|
var SAASFUNNELS_DEFAULT_API_BASE_URL = "https://app.saasfunnels.ai";
|
|
24270
24270
|
var SAASFUNNELS_ENV = Object.freeze({
|