fimo 2.3.1 → 2.3.2-staging.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/assets/skills/fimo-cli/references/deploy.md +8 -1
- package/assets/skills/fimo-cli/references/integrations/firecrawl.md +6 -26
- package/assets/skills/fimo-cli/references/integrations.md +14 -30
- package/dist/cli/bundle.json +1 -1
- package/dist/cli/index.js +11 -14
- package/package.json +9 -9
- package/release.json +2 -2
- package/templates/astro/package.json +2 -2
- package/templates/astro/public/claude-color.svg +1 -0
- package/templates/astro/public/codex.svg +1 -0
- package/templates/astro/public/copilot-color.svg +1 -0
- package/templates/astro/public/cursor-light.svg +12 -0
- package/templates/astro/public/fimo-logo-black.svg +3 -0
- package/templates/astro/src/components/StarterHome.astro +186 -0
- package/templates/astro/src/layouts/Base.astro +3 -0
- package/templates/astro/src/pages/[locale]/index.astro +2 -2
- package/templates/astro/src/pages/index.astro +2 -2
- package/templates/nextjs/package.json +3 -3
- package/templates/nextjs/public/claude-color.svg +1 -0
- package/templates/nextjs/public/codex.svg +1 -0
- package/templates/nextjs/public/copilot-color.svg +1 -0
- package/templates/nextjs/public/cursor-light.svg +12 -0
- package/templates/nextjs/public/fimo-logo-black.svg +3 -0
- package/templates/nextjs/src/app/globals.css +119 -24
- package/templates/nextjs/src/app/page.tsx +73 -5
- package/templates/react-router/package.json +5 -6
- package/templates/react-router/src/lib/utils.ts +1 -6
- package/templates/sveltekit/package.json +2 -2
- package/templates/sveltekit/src/app.html +5 -0
- package/templates/sveltekit/src/routes/[[locale=locale]]/+page.svelte +183 -25
- package/templates/sveltekit/static/claude-color.svg +1 -0
- package/templates/sveltekit/static/codex.svg +1 -0
- package/templates/sveltekit/static/copilot-color.svg +1 -0
- package/templates/sveltekit/static/cursor-light.svg +12 -0
- package/templates/sveltekit/static/fimo-logo-black.svg +3 -0
- package/templates/vite/package.json +4 -4
- package/templates/vite/public/claude-color.svg +1 -0
- package/templates/vite/public/codex.svg +1 -0
- package/templates/vite/public/copilot-color.svg +1 -0
- package/templates/vite/public/cursor-light.svg +12 -0
- package/templates/vite/public/fimo-logo-black.svg +3 -0
- package/templates/vite/src/App.tsx +73 -10
- package/templates/vite/src/index.css +115 -32
|
@@ -54,7 +54,14 @@ Use the publication ID returned by the failed command: run `fimo publish inspect
|
|
|
54
54
|
|
|
55
55
|
## Diagnose a failed preview deploy
|
|
56
56
|
|
|
57
|
-
|
|
57
|
+
A failed `fimo deploy --json` names the cause in `error.details.failure_code` and the phase in `error.details.phase`: `pull` (Git synchronization into the sandbox), `install` (dependency install), `restart` (dev-server start), or `readiness` (the final preview check); `acquire` and `sync-env` are the sandbox and environment steps before them. When the failed process produced output, the same error carries `error.details.exit_code` and a bounded, redacted `error.details.log_tail` (newest line last). Read that tail first: it is the failed process's own output, and a replacement sandbox that failed is discarded, so `fimo logs` shows the preview that is still serving rather than the attempt that failed. The top-level codes remain compatible:
|
|
58
|
+
|
|
59
|
+
- `SANDBOX_SYNC_FAILED` — the revision never became ready. Fix what the tail reports (a manifest or lockfile for `install`, the Git state for `pull`), then deploy again. When `error.details.failure_code` is `install_policy_blocked`, follow the typed repair in `error.details.repair`.
|
|
60
|
+
- `PREVIEW_NOT_READY` — the revision landed and the dev server never served the page. Fix what the tail reports; when there is no tail, read `fimo logs --json`.
|
|
61
|
+
|
|
62
|
+
`--no-wait` skips only the final readiness check. Pull, install, and dev-server failures are still reported with the same fields.
|
|
63
|
+
|
|
64
|
+
When there is no tail, run `fimo logs --json` before retrying. Read the newest install and dev-server events first; when the response is truncated, use its `previousCursor` as `fimo logs --cursor <cursor> --json` to fetch the preceding page, or use `--all-pages` to fetch every retained page. `--before` remains a compatibility alias. Do not recreate or replace the sandbox before collecting logs, because that can discard the failure evidence.
|
|
58
65
|
|
|
59
66
|
When Preview reports blocked dependency build scripts, treat that as a project security-policy repair, not a transient sandbox failure. Review every named package before approving it, then use the package manager's narrow project-owned mechanism:
|
|
60
67
|
|
|
@@ -13,25 +13,17 @@ fimo integrations info firecrawl --json
|
|
|
13
13
|
fimo integrations status firecrawl --json
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
Firecrawl is built into Fimo. Fimo owns the Firecrawl account and bills the project in Fimo credits, so enabling it is
|
|
17
|
+
the whole setup and it takes no API key:
|
|
18
18
|
|
|
19
19
|
```bash
|
|
20
20
|
fimo integrations enable firecrawl
|
|
21
21
|
```
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
`fimo integrations connect firecrawl` is refused: there is nothing to connect. If the user wants their own Firecrawl
|
|
24
|
+
account, add Firecrawl's own MCP server with `fimo mcp add`, which is the generic path for a server the user owns.
|
|
24
25
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
fimo integrations connect firecrawl --name client-a --token-stdin
|
|
29
|
-
fimo integrations enable firecrawl --connection client-a
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
`connect` creates or repairs an organization-level connection. `enable --connection <alias>` lets the current project use that connection. Teammates and agents can use the integration, but Fimo never prints the API key back.
|
|
33
|
-
|
|
34
|
-
There is no fallback between auth choices. If a named connection is selected and its key is missing or broken, repair the connection. If `fimo` is selected and the backend is not configured, report that Firecrawl needs backend setup.
|
|
26
|
+
If Firecrawl is enabled and the backend is not configured, report that Firecrawl needs backend setup.
|
|
35
27
|
|
|
36
28
|
Firecrawl `monitor.*` tools monitor websites for changes. `monitor.list` shows the website change monitors available in the current project.
|
|
37
29
|
|
|
@@ -71,15 +63,6 @@ Request several formats:
|
|
|
71
63
|
fimo integrations run firecrawl scrape --url https://example.com --formats markdown,summary,links
|
|
72
64
|
```
|
|
73
65
|
|
|
74
|
-
Try a named connection for one run without changing the project default:
|
|
75
|
-
|
|
76
|
-
```bash
|
|
77
|
-
fimo integrations run firecrawl scrape --url https://example.com --connection client-b
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
This only works after a named Firecrawl connection already exists. The current CLI does not yet create Firecrawl API-key
|
|
81
|
-
connections automatically for you; create one first with `fimo integrations connect firecrawl --name <name> --token-stdin`.
|
|
82
|
-
|
|
83
66
|
Map URLs from a site:
|
|
84
67
|
|
|
85
68
|
```bash
|
|
@@ -196,9 +179,7 @@ fimo deploy
|
|
|
196
179
|
2. Load `references/integrations.md` and this Firecrawl reference.
|
|
197
180
|
3. Run `fimo integrations status firecrawl --json`.
|
|
198
181
|
4. If Firecrawl is not enabled, ask before enabling unless the user already requested setup.
|
|
199
|
-
5.
|
|
200
|
-
If they bring a key, run `fimo integrations connect firecrawl --name <name> --token-stdin`, then
|
|
201
|
-
`fimo integrations enable firecrawl --connection <name>`.
|
|
182
|
+
5. Run `fimo integrations enable firecrawl`. That is the whole setup; there is no key to ask for.
|
|
202
183
|
6. For one-off research, pick the smallest action that answers the question:
|
|
203
184
|
- `search` to get query-relevant excerpts and source URLs.
|
|
204
185
|
- `scrape` to read one known page when the excerpt lacks context or exact wording matters.
|
|
@@ -213,7 +194,6 @@ fimo deploy
|
|
|
213
194
|
|
|
214
195
|
- `Integration 'firecrawl' is not enabled for this project.` Enable it first or ask the user.
|
|
215
196
|
- `Fimo Firecrawl account is not configured on this backend.` Backend needs `FIRECRAWL_API_KEY`.
|
|
216
|
-
- `Firecrawl API key is missing.` Repair the organization connection with `fimo integrations connect firecrawl --name <name> --token-stdin`.
|
|
217
197
|
- Provider action errors. Retry only when the query, URL, timeout, or transient network state changed; otherwise report the provider error.
|
|
218
198
|
|
|
219
199
|
## Good Recipes
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Integrations
|
|
2
2
|
|
|
3
|
-
Use integrations to enable external services for a Fimo project.
|
|
3
|
+
Use integrations to enable external services for a Fimo project. Firecrawl and Fal are built into Fimo: Fimo owns the provider account and bills the project in Fimo credits, so they take no API key at all. Every other credential (MCP servers, OAuth workspaces) is stored encrypted by Fimo and never printed back to the CLI. Teammates and agents receive access to the integration, not the underlying token.
|
|
4
4
|
|
|
5
5
|
Start with `fimo integrations list` whenever the task could benefit from an external service. It is the project-scoped,
|
|
6
6
|
runtime-truthful inventory; use `info` only for the relevant integration instead of loading every provider's tools into
|
|
@@ -14,7 +14,7 @@ fimo integrations info firecrawl
|
|
|
14
14
|
fimo integrations status firecrawl
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
-
`info` shows supported auth choices, required credentials, tools, and recipes. `status` shows the project-specific setup state.
|
|
17
|
+
`info` shows supported auth choices, required credentials, tools, and recipes. For a built-in service the only auth choice is `fimo`. `status` shows the project-specific setup state.
|
|
18
18
|
|
|
19
19
|
When running inside an autonomous agent session, `fimo integrations list` shows the effective integrations available to that agent runtime, scoped by `.fimo/agents/<name>/config.yaml`. It lists only usable tools, plus the auth column and the config path that granted access.
|
|
20
20
|
|
|
@@ -48,38 +48,23 @@ Load the integration reference when the user names a specific integration:
|
|
|
48
48
|
|
|
49
49
|
```bash
|
|
50
50
|
fimo integrations enable firecrawl
|
|
51
|
-
fimo integrations enable
|
|
52
|
-
fimo integrations
|
|
53
|
-
fimo integrations enable firecrawl --connection client-a
|
|
51
|
+
fimo integrations enable fal
|
|
52
|
+
fimo integrations disable firecrawl
|
|
54
53
|
```
|
|
55
54
|
|
|
56
|
-
Bare enable uses the integration's default auth path. For Firecrawl
|
|
55
|
+
Bare enable uses the integration's default auth path. For Firecrawl and Fal that is the only path: Fimo credits, no key,
|
|
56
|
+
no connection, nothing to choose. `fimo integrations connect firecrawl` and `connect fal` are refused for that reason.
|
|
57
57
|
|
|
58
|
-
If an integration has no safe default auth path, bare enable
|
|
59
|
-
`fimo integrations connect <integration> --name <name> --token-stdin`, then
|
|
60
|
-
`fimo integrations enable <integration> --connection <name>`.
|
|
58
|
+
If an integration has no safe default auth path, bare enable stops with a repair command instead of guessing.
|
|
61
59
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
`--auth fimo` explicitly means "Use Fimo credits". Use project credits; no API key is needed.
|
|
66
|
-
|
|
67
|
-
Switch a project back to the built-in account later with:
|
|
68
|
-
|
|
69
|
-
```bash
|
|
70
|
-
fimo integrations auth use firecrawl fimo
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
There is no silent fallback. If a project is enabled with a named API-key connection and that connection is missing or broken, repair the connection instead of falling back to Fimo credits.
|
|
60
|
+
To bring your own Firecrawl or Fal account, add it as an MCP server (`fimo mcp add`), which is the generic path for any
|
|
61
|
+
server the user owns. It does not replace the built-in service.
|
|
74
62
|
|
|
75
63
|
## Connections
|
|
76
64
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
Use `connect` for provider accounts, workspaces, OAuth installs, and API-key accounts. Connections live at the organization level and are shared as capabilities, not as visible credentials. A project chooses one by enabling the integration with `--connection <alias>`.
|
|
65
|
+
Use `connect` for provider accounts, workspaces, OAuth installs, and user-owned MCP servers. Connections live at the
|
|
66
|
+
organization level and are shared as capabilities, not as visible credentials. A project chooses one by enabling the
|
|
67
|
+
integration with `--connection <alias>`.
|
|
83
68
|
|
|
84
69
|
Set up Slack from **Project Settings > Connections** in Fimo Studio. Slack app creation and workspace approval require an explicit organization app choice, so the CLI does not guess one.
|
|
85
70
|
|
|
@@ -88,7 +73,6 @@ Set up Slack from **Project Settings > Connections** in Fimo Studio. Slack app c
|
|
|
88
73
|
```bash
|
|
89
74
|
fimo integrations run firecrawl scrape --url https://example.com
|
|
90
75
|
fimo integrations run firecrawl scrape --url https://example.com --formats markdown,summary,links
|
|
91
|
-
fimo integrations run firecrawl scrape --url https://example.com --connection client-b
|
|
92
76
|
fimo integrations run firecrawl search --query "Example Domain" --max-results 3 --include-domains example.com
|
|
93
77
|
fimo integrations run firecrawl map --url https://example.com --limit 20
|
|
94
78
|
fimo integrations run firecrawl crawl --url https://example.com --limit 3 --formats markdown
|
|
@@ -102,8 +86,8 @@ Firecrawl search returns query-relevant excerpts by default. Use them for direct
|
|
|
102
86
|
full context or exact wording is needed. Search can be narrowed with source, category, domain, freshness, location,
|
|
103
87
|
and country options; see the Firecrawl reference for the full command shape.
|
|
104
88
|
|
|
105
|
-
Use `--connection <alias>` only for one run when a named connection already exists. It
|
|
106
|
-
integration setup.
|
|
89
|
+
Use `--connection <alias>` only for one run of a connection-backed integration when a named connection already exists. It
|
|
90
|
+
does not change the project default integration setup, and built-in services have no connection to name.
|
|
107
91
|
|
|
108
92
|
Firecrawl `monitor.*` tools monitor websites for changes. `monitor.list` shows the website change monitors available in the current project. Fimo cleans up those monitors when the project is deleted.
|
|
109
93
|
|