fimo 2.8.0-staging.9 → 2.9.0-staging.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/assets/skills/fimo/SKILL.md +0 -1
- package/assets/skills/fimo-cli/SKILL.md +6 -7
- package/assets/skills/fimo-cli/references/assets.md +2 -0
- package/assets/skills/fimo-cli/references/branches.md +5 -2
- package/assets/skills/fimo-cli/references/deploy.md +1 -1
- package/assets/skills/fimo-cli/references/hosting.md +22 -22
- package/assets/skills/fimo-cli/references/init.md +1 -2
- package/assets/skills/fimo-cli/references/integrations/firecrawl.md +1 -41
- package/assets/skills/fimo-cli/references/integrations.md +2 -38
- package/assets/skills/fimo-cli/references/knowledge.md +1 -1
- package/assets/skills/fimo-cli/references/mcp.md +5 -6
- package/assets/skills/fimo-cli/references/preview.md +1 -1
- package/assets/skills/fimo-cli/references/project-vars-and-secrets.md +0 -16
- package/assets/skills/fimo-cli/references/webhooks.md +0 -2
- package/assets/skills/fimo-code/SKILL.md +1 -0
- package/assets/skills/fimo-code/references/assets.md +5 -5
- package/assets/skills/fimo-code/references/design.md +1 -1
- package/assets/skills/fimo-code/references/frameworks/next.md +1 -10
- package/assets/skills/fimo-code/references/ui.md +1 -1
- package/assets/skills/fimo-migration/references/frameworks/nextjs.md +1 -22
- package/assets/skills/fimo-migration/references/qa.md +1 -11
- package/assets/skills/fimo-studio/SKILL.md +6 -9
- package/assets/skills/fimo-studio/references/ai-chat.md +15 -4
- package/assets/skills/fimo-studio/references/billing-and-credits.md +2 -4
- package/assets/skills/fimo-studio/references/command-palette.md +0 -2
- package/assets/skills/fimo-studio/references/connections.md +2 -2
- package/assets/skills/fimo-studio/references/preview-and-responsive.md +1 -0
- package/assets/skills/fimo-studio/references/project-creation.md +5 -3
- package/assets/skills/fimo-studio/references/webhooks.md +3 -3
- package/dist/build/astro/config.js +32 -1
- package/dist/cli/bundle.json +2 -2
- package/dist/cli/index.js +168 -173
- package/dist/runtime/paths/get-fimo-paths.js +2 -24
- package/dist/runtime/preview/frame-headers.d.ts +14 -0
- package/dist/runtime/preview/frame-headers.js +96 -0
- package/dist/runtime/preview/index.d.ts +1 -0
- package/dist/runtime/preview/index.js +1 -0
- package/dist/runtime/project-layout.d.ts +0 -1
- package/dist/runtime/project-layout.js +1 -5
- package/dist/runtime/shared/local-runtime-env.js +2 -14
- package/package.json +10 -10
- package/templates/astro/.fimo/config.json +0 -14
- package/templates/astro/AGENTS.md +2 -1
- package/templates/astro/_gitignore +3 -0
- package/templates/astro/package.json +3 -3
- package/templates/astro/src/layouts/Base.astro +0 -48
- package/templates/nextjs/AGENTS.md +1 -1
- package/templates/nextjs/_gitignore +3 -0
- package/templates/nextjs/package.json +5 -5
- package/templates/react-router/AGENTS.md +1 -1
- package/templates/react-router/_gitignore +3 -0
- package/templates/react-router/package.json +5 -5
- package/templates/sveltekit/AGENTS.md +1 -0
- package/templates/sveltekit/_gitignore +3 -0
- package/templates/sveltekit/package.json +3 -3
- package/templates/vite/AGENTS.md +2 -0
- package/templates/vite/_gitignore +3 -0
- package/templates/vite/package.json +5 -5
- package/assets/agent-templates/_default/GOAL.md +0 -21
- package/assets/agent-templates/_default/capabilities.yaml +0 -11
- package/assets/agent-templates/_default/config.yaml +0 -13
- package/assets/agent-templates/broken-link-sweeper/GOAL.md +0 -51
- package/assets/agent-templates/broken-link-sweeper/capabilities.yaml +0 -1
- package/assets/agent-templates/broken-link-sweeper/config.yaml +0 -13
- package/assets/agent-templates/content-translator/GOAL.md +0 -33
- package/assets/agent-templates/content-translator/capabilities.yaml +0 -5
- package/assets/agent-templates/content-translator/config.yaml +0 -12
- package/assets/agent-templates/content-translator/scripts/translate-entries.ts +0 -69
- package/assets/agent-templates/post-deploy-check/GOAL.md +0 -23
- package/assets/agent-templates/post-deploy-check/capabilities.yaml +0 -1
- package/assets/agent-templates/post-deploy-check/config.yaml +0 -10
- package/assets/agent-templates/post-deploy-check/scripts/check-logs.ts +0 -39
- package/assets/agent-templates/post-deploy-check/scripts/probe-routes.ts +0 -53
- package/assets/agent-templates/seo-audit/GOAL.md +0 -43
- package/assets/agent-templates/seo-audit/capabilities.yaml +0 -3
- package/assets/agent-templates/seo-audit/config.yaml +0 -14
- package/assets/agent-templates/seo-audit/references/report-template.md +0 -28
- package/assets/agent-templates/seo-audit/references/scoring-methodology.md +0 -30
- package/assets/agent-templates/seo-audit/scripts/analyze-html.ts +0 -82
- package/assets/agent-templates/seo-audit/scripts/fetch-page.ts +0 -39
- package/assets/agent-templates/seo-audit/scripts/list-routes.ts +0 -46
- package/assets/agent-templates/seo-audit/scripts/report.ts +0 -82
- package/assets/agent-templates/seo-audit/scripts/score.ts +0 -131
- package/assets/skills/fimo-cli/references/agents.md +0 -298
- package/assets/skills/fimo-studio/references/agents.md +0 -33
- package/assets/skills/fimo-studio/references/drawing-and-wireframing.md +0 -61
- package/templates/astro/src/components/ProjectOverview.astro +0 -45
- package/templates/astro/src/pages/[locale]/projects/[slug].astro +0 -38
- package/templates/astro/src/pages/[locale]/projects/index.astro +0 -19
- package/templates/astro/src/pages/projects/[slug].astro +0 -31
- package/templates/astro/src/pages/projects/index.astro +0 -13
- package/templates/astro/src/schemas/Project.json +0 -9
- package/templates/astro/src/schemas/Project.ts +0 -29
- package/templates/astro/src/schemas/Project.types.ts +0 -70
- package/templates/astro/src/schemas/SiteSettings.json +0 -10
- package/templates/astro/src/schemas/SiteSettings.ts +0 -31
- package/templates/astro/src/schemas/SiteSettings.types.ts +0 -69
- package/templates/react-router/src/pages/Privacy.tsx +0 -79
- package/templates/react-router/src/pages/Terms.tsx +0 -48
- package/templates/react-router/src/pages/legal/LegalPage.tsx +0 -42
|
@@ -38,7 +38,6 @@ Pick by task:
|
|
|
38
38
|
|
|
39
39
|
- Writing code — schemas/forms, generated clients, labels, framework adapters, rendering primitives → `fimo-code`
|
|
40
40
|
- Site creation, local setup, cloning, and CLI workflows — init, push, deploy, sync, labels, domains, analytics → `fimo-cli`
|
|
41
|
-
- Fimo agents — create, configure, validate, deploy, run, or inspect them → `fimo-cli` (`references/agents.md`)
|
|
42
41
|
- AI agent setup — connect Claude Code, Codex, Cursor, or another agent → `fimo-cli` (`references/agent-setup.md`)
|
|
43
42
|
- Remote MCP integrations — add, inspect, search, or run an MCP server → `fimo-cli` (`references/mcp.md`)
|
|
44
43
|
- The Fimo Studio dashboard / web app UI → `fimo-studio`
|
|
@@ -3,13 +3,13 @@ name: fimo-cli
|
|
|
3
3
|
description: >-
|
|
4
4
|
Use the `fimo` CLI to create or operate a Fimo site: content, forms,
|
|
5
5
|
media, labels/locales, deploys, Branches, Environments, domains, analytics,
|
|
6
|
-
integrations,
|
|
6
|
+
integrations, collaboration, accounts, and credits. Also use
|
|
7
7
|
for AI agent or MCP setup and confirmed Fimo platform blockers.
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# Fimo CLI
|
|
11
11
|
|
|
12
|
-
The `fimo` CLI is the workflow surface for Fimo. Fimo connects content, media, forms, analytics, editing, and hosting to web applications. The CLI handles site creation, content / forms / media / labels / locale workflows, deploys, collaboration, account management,
|
|
12
|
+
The `fimo` CLI is the workflow surface for Fimo. Fimo connects content, media, forms, analytics, editing, and hosting to web applications. The CLI handles site creation, content / forms / media / labels / locale workflows, deploys, collaboration, account management, AI credit inspection, and AI agent setup.
|
|
13
13
|
|
|
14
14
|
This skill describes **what the CLI does and the workflows it drives**. For the package surface used IN code (component props, generated hooks, JSON shapes, code-side rules), load the `fimo-code` skill on demand with `fimo skills get fimo-code`, using the invocation prefix below.
|
|
15
15
|
|
|
@@ -61,6 +61,8 @@ fimo skills install # install the global Fimo skill f
|
|
|
61
61
|
fimo init my-site --org <id> # one-stop setup: sign in, create/link a project, install deps + skills. Use the org **id** from `fimo orgs list`, NOT the slug.
|
|
62
62
|
fimo init my-react-site --framework react-router --org <id> --yes --no-skills # canonical React Router template
|
|
63
63
|
fimo init --project-id <id> my-site # set up a project by ID: scaffold a newly created project or clone existing code
|
|
64
|
+
fimo new my-site --yes --json # create a site without an account; a person claims it within 72 hours. Run `fimo new --instructions` for the full guide
|
|
65
|
+
fimo claim --json # inside a `fimo new` site: the claim link and claim state
|
|
64
66
|
fimo clone # interactively choose an existing project to clone locally
|
|
65
67
|
cd my-site # then load skills on demand: fimo skills get fimo-code
|
|
66
68
|
pnpm dev # run the app locally (use the project's PM: pnpm/npm run/yarn/bun) — your iteration loop
|
|
@@ -101,7 +103,7 @@ Load the matching reference when the user's request fires its trigger. Recipes t
|
|
|
101
103
|
- "Check the site in a browser / is my site accessible / a11y or WCAG check / measure LCP or Web Vitals / why is the page slow / inspect network requests or console errors / Lighthouse score" → `references/site-checks.md`
|
|
102
104
|
- "Schedule a command / cron / nightly publish / recurring checks / `fimo schedules`" → `references/schedules.md`
|
|
103
105
|
- "Set env vars / configure API keys / add project secrets / local `.env.local` / `fimo vars` / `fimo secrets`" → `references/project-vars-and-secrets.md`
|
|
104
|
-
- "React to form submissions / publish changes /
|
|
106
|
+
- "React to form submissions / publish changes / analytics reports / media activity / send events to Resend, Slack, GitHub, Zapier, or an HTTP endpoint / configure or debug outbound webhooks" → `references/webhooks.md`
|
|
105
107
|
- "Enable provider tools / integrations / API key connection for a provider / agent integration access" → `references/integrations.md`
|
|
106
108
|
- "Firecrawl / scrape a public website / competitor research / agent web research" → `references/integrations.md` **+ load `references/integrations/firecrawl.md`**
|
|
107
109
|
- "Check credits / credit balance / can I keep using AI / billing credits / running low / how many credits are left" → `references/credits.md`
|
|
@@ -114,7 +116,6 @@ Load the matching reference when the user's request fires its trigger. Recipes t
|
|
|
114
116
|
- "Modify the URL of the website / change my project's address / connect a custom domain (e.g. blog.example.com) / rename the Fimo-provided `*.fimo.site` subdomain / buy a new domain through Fimo / set up a domain" → `references/domains.md`
|
|
115
117
|
- "Invite a collaborator / add Marc / share with client" → `references/invite.md`
|
|
116
118
|
- "Login / log out / who am I / switch organization" → `references/account.md` — note: switching **org** is `fimo orgs switch`; bare `fimo switch` changes the active **Fimo Branch** (see `references/branches.md`)
|
|
117
|
-
- "Create / scaffold / run / validate an agent / agent bundle / wire or enable its triggers / list agent templates / view agent runs, reports, or logs (`fimo agents *`)" → `references/agents.md`
|
|
118
119
|
- "Install Fimo for my agent / fimo skills install / set up Claude Code, Codex, or Cursor for Fimo" → `references/agent-setup.md`
|
|
119
120
|
- "Add, inspect, search, or run a remote MCP server / use `fimo mcp`" → `references/mcp.md`
|
|
120
121
|
- "Refresh / update installed Fimo skills / fimo skills sync / agent missing the latest Fimo conventions" → `references/agent-setup.md`
|
|
@@ -138,7 +139,6 @@ These fire at specific moments in the project lifecycle. **Surface them proactiv
|
|
|
138
139
|
- **You need the current preview URL but haven't changed code** (opening it, screenshotting it, handing it to another tool, the previous URL expired) → `fimo preview url`, never a no-op `fimo deploy`. See `references/preview.md`.
|
|
139
140
|
- **When the user wants to try something risky / explore a redesign without touching the live site** → suggest a feature Branch: `fimo checkout -b <name>` gives an isolated Branch + DB + preview. Deploy previews there, then `fimo merge` it back and `fimo publish`. See `references/branches.md`.
|
|
140
141
|
- **After completing or safely preserving the user's main work, when a confirmed Fimo platform failure still materially blocks the task after one safe recovery attempt, or a confirmed missing capability blocks completion or forces a fragile or heavily manual workaround** → use the built-in `supportReport` tool. Do not wait for the user to ask and do not stop after only describing the gap. See `references/support.md`.
|
|
141
|
-
- **When a project agent has stopped and is waiting on a person** → a project member answers its question in Studio, on the run's page; the question email links there. The CLI cannot answer it. Never answer on the person's behalf.
|
|
142
142
|
- **After the first successful `fimo deploy`** → suggest `fimo invite` if the project involves multiple people. Typical roles: `edit` for developers/content editors, `view` or `comment` for clients/stakeholders, `full` for project leads. See `references/invite.md`.
|
|
143
143
|
- **After the automatic first-preview deploy on the create-new path, before the project has been published** → if there is no custom domain and the free default `*.fimo.site` slug still looks generated or was never explicitly chosen, offer to find a cleaner free subdomain. It needs no DNS. Never claim one without explicit user confirmation: suggest candidates, let the user choose, then rename it. Choosing the slug does not publish the site; the URL starts resolving only after the first successful `fimo deploy --publish`. Skip this nudge if the user already chose the default slug, attached a custom domain, or declined. See `references/domains.md` § Offer a cleaner default URL before first publish.
|
|
144
144
|
- **When the user wants to modify the URL of their website** → walk through `references/domains.md`. The CLI surface covers renaming the Fimo-provided subdomain (`fimo domains rename-default`, free), attaching a domain they already own (`fimo domains add`, Premium), and buying a new domain through Fimo (`fimo domains buy`, Premium).
|
|
@@ -151,10 +151,9 @@ These fire at specific moments in the project lifecycle. **Surface them proactiv
|
|
|
151
151
|
- **Running `fimo deploy` just to get the current preview URL** — that's a commit + push + sandbox sync when only destination resolution is needed. Use `fimo preview url` instead. See `references/preview.md`.
|
|
152
152
|
- **Using `fimo deploy --publish` casually** — `--publish` makes the site live to the public. Plain `fimo deploy` (preview) is the default. Use `--publish` only when the user says "ship it" / "go live" / "publish".
|
|
153
153
|
- **Bare `fimo init` in a non-interactive shell** — will hang. Always pass `[dir]`, `--no-install` (or `--install`), `--no-skills` (or `--skills`), and `--org`/`--agents` as needed explicitly when scripted.
|
|
154
|
-
- **Hardcoding content / strings / images in code** — that's what schemas, `t()`, and the media library are for. See the `fimo-code` skill's
|
|
154
|
+
- **Hardcoding content / strings / images in code, or committing image and video files** — that's what schemas, `t()`, and the media library are for. See the `fimo-code` skill's non-negotiable boundaries.
|
|
155
155
|
- **Adding another deploy tool**. Fimo handles deploys; don't bolt another platform on.
|
|
156
156
|
- **Committing secrets** — hidden values use `fimo secrets`; public browser-safe values use `fimo vars`. Local env files are ignored and must not become deploy inputs.
|
|
157
157
|
- **Hardcoding tokens in flags** — use the credentials written by `fimo login` (one file per backend at `~/.config/fimo/credentials/<host>-<hash>.json`).
|
|
158
158
|
- **Treating the daily allowance as extra credits** — the allowance section appears only for legacy Premium organizations, and `fimo credits` already includes its spendable credits in "Available now"; it is accounting context, not an amount to add.
|
|
159
159
|
- **Trying to refill credits from the CLI** — `fimo credits` is read-only. Buying/refilling credits belongs in the billing UI for now.
|
|
160
|
-
- **`fimo agents run` to push bundle changes** — it doesn't. The bundle reaches the server through `fimo deploy` (it lives in git, not the DB), and that push to `main` is also what wires the declared triggers. `run` dispatches the _deployed_ version. Deploy first. There is no `activate` command. See `references/agents.md`.
|
|
@@ -7,6 +7,8 @@ This file covers the **CLI workflow** for media that already exists: uploading f
|
|
|
7
7
|
|
|
8
8
|
## Upload a file
|
|
9
9
|
|
|
10
|
+
Every image or video the site uses goes through this upload or a generation task, never into the repository. Run `fimo skills get fimo-code` and read § Non-negotiable boundaries for the rule and its exceptions.
|
|
11
|
+
|
|
10
12
|
```bash
|
|
11
13
|
fimo assets upload ./hero.jpg
|
|
12
14
|
fimo assets upload ./hero.jpg --name "Hero Image" --parent-id "<folder-uuid>"
|
|
@@ -83,12 +83,15 @@ fimo status --json # machine-readable
|
|
|
83
83
|
|
|
84
84
|
```bash
|
|
85
85
|
fimo merge feat/seo # merge feat/seo into the current Branch
|
|
86
|
-
fimo merge feat/seo -y # non-interactive:
|
|
86
|
+
fimo merge feat/seo -y # non-interactive: keep the target's value on every conflict
|
|
87
|
+
fimo merge feat/seo --resume # continue a stopped merge, or follow one still applying
|
|
87
88
|
fimo merge feat/seo --allow-direct-merge # override the "don't merge straight onto main" gate
|
|
88
89
|
```
|
|
89
90
|
|
|
90
91
|
- Merging directly onto `main` is gated — the CLI refuses unless you pass `--allow-direct-merge`. Prefer merging on a branch and publishing.
|
|
91
|
-
- On conflicts you get
|
|
92
|
+
- On conflicts nothing is applied. In a terminal you get a resolver per row: **parent** (keep the target's value), **child** (take the source's value), **pick** (edit in `$EDITOR`), or **abort**. `-y` keeps the target's value for everything.
|
|
93
|
+
- `--json` never prompts. Unresolved conflicts exit non-zero with `MERGE_CONFLICTS`; `error.details` carries `merge_id`, `from`, `to`, and `conflicts`. Re-run with `--resume --yes` to keep the target's values, or resolve interactively.
|
|
94
|
+
- After resolutions are accepted the CLI waits for the merge: success is `status: "ok"` with the completed merge's `mergeId` and `summary` but no `applied` list (per-surface counts are only reported when a merge applies cleanly without conflicts); `MERGE_FAILED` and `MERGE_CANCELLED` are terminal; `MERGE_IN_PROGRESS` means it is still applying — run `--resume` to keep following it. `--resume` never resubmits a merge that is already applying.
|
|
92
95
|
|
|
93
96
|
## `fimo pull`
|
|
94
97
|
|
|
@@ -105,7 +105,7 @@ There's nothing special about this — it's the same `fimo deploy` you'd run lat
|
|
|
105
105
|
**Use `--no-restart` when you only touched HMR-safe files:**
|
|
106
106
|
|
|
107
107
|
- Anything under `src/**` (components, pages, hooks, styles)
|
|
108
|
-
-
|
|
108
|
+
- Fixed-path static files under `public/`, such as favicons or `robots.txt` (images and videos belong in the media library, not the repository; see the `fimo-code` skill's non-negotiable boundaries)
|
|
109
109
|
- Content / entries / translations / form definitions (JSON the Fimo runtime hot-loads)
|
|
110
110
|
|
|
111
111
|
**Do NOT use `--no-restart` when you touched any of these — they require a fresh dev server:**
|
|
@@ -33,31 +33,25 @@ Declare redirects, headers, rewrites, and URL shape in
|
|
|
33
33
|
|
|
34
34
|
Every field is optional. Only what you declare is emitted.
|
|
35
35
|
|
|
36
|
-
## Preview and security headers
|
|
37
|
-
|
|
38
|
-
A restrictive application-owned CSP or `X-Frame-Options` policy can block Studio
|
|
39
|
-
Preview. Do not assume automatic header rewriting; Next.js `withFimo` does not
|
|
40
|
-
provide it. Inspect the served policy and scope any manual adaptation to Preview,
|
|
41
|
-
preserving production protections and unrelated headers. `frame-ancestors`
|
|
42
|
-
permits the Studio parent, not the framed app's preview origin. Never derive
|
|
43
|
-
ancestor sources from a preview-origin variable. For `script-src`, `connect-src`,
|
|
44
|
-
`frame-src`, and `form-action`, use resolved/observed Fimo resources and endpoints
|
|
45
|
-
actually used by the iframe. Studio-parent WebSockets do not belong in app CSP.
|
|
46
|
-
|
|
47
36
|
## Matching
|
|
48
37
|
|
|
49
38
|
`source` matches the pathname only, never the query string.
|
|
50
39
|
|
|
51
|
-
| Pattern | Matches
|
|
52
|
-
| --------------- |
|
|
53
|
-
| `/about` | exactly that path
|
|
54
|
-
| `/blog/:slug` | one segment, captured as `slug`
|
|
55
|
-
| `/proxy/:rest*` | any number of segments, including none
|
|
56
|
-
| `/(.*)` | everything
|
|
40
|
+
| Pattern | Matches |
|
|
41
|
+
| --------------- | --------------------------------------------- |
|
|
42
|
+
| `/about` | exactly that path |
|
|
43
|
+
| `/blog/:slug` | one segment, captured as `slug` |
|
|
44
|
+
| `/proxy/:rest*` | any number of segments, including none |
|
|
45
|
+
| `/(.*)` | everything |
|
|
46
|
+
| `/:path(.*)` | everything, including `/`, captured as `path` |
|
|
57
47
|
|
|
58
48
|
Captured names are reusable in `destination`: `/blog/:slug` →
|
|
59
49
|
`/posts/:slug`. `destination` may be an absolute path or an external URL.
|
|
60
50
|
|
|
51
|
+
Fimo preserves `source` as written. Use `/:path(.*)` when a redirect, rewrite,
|
|
52
|
+
or header rule must include the homepage `/`; do not assume `/:path*` includes
|
|
53
|
+
it. Keep `:path*` in the destination to reuse the captured path.
|
|
54
|
+
|
|
61
55
|
## Conditions
|
|
62
56
|
|
|
63
57
|
Any redirect, rewrite, or header rule can require more than a path match. `has`
|
|
@@ -93,9 +87,15 @@ them are present.
|
|
|
93
87
|
Omit `value` to match on presence alone, as the `consent` cookie above does.
|
|
94
88
|
The redirect example requires the request to include `x-promo: summer`.
|
|
95
89
|
|
|
90
|
+
For a www-to-apex redirect, connect both hostnames and use
|
|
91
|
+
`{"source":"/:path(.*)","has":[{"type":"host","value":"www.example.com"}],"destination":"https://example.com/:path*","statusCode":301}`.
|
|
92
|
+
The host condition matches the visitor's requested hostname. Verify `/`, a
|
|
93
|
+
nested path, and a query string, and check that the destination host does not
|
|
94
|
+
redirect back.
|
|
95
|
+
|
|
96
96
|
**Prefer doing this in the application when it can.** Middleware, a loader, or a
|
|
97
|
-
server component can be run and tested locally; a condition here
|
|
98
|
-
|
|
97
|
+
server component can be run and tested locally; a condition here takes effect
|
|
98
|
+
on hosted deployments and needs verification there. Reach for `has` when
|
|
99
99
|
the app cannot act — a redirect that must happen before any code runs, or a
|
|
100
100
|
header on a static asset.
|
|
101
101
|
|
|
@@ -121,6 +121,6 @@ header on a static asset.
|
|
|
121
121
|
## Verify
|
|
122
122
|
|
|
123
123
|
`fimo validate` rejects an unknown `hosting` key, so a typo fails locally
|
|
124
|
-
rather than silently doing nothing in production.
|
|
125
|
-
|
|
126
|
-
the preview.
|
|
124
|
+
rather than silently doing nothing in production. Hosting rules apply to
|
|
125
|
+
hosted deployments; the sandbox dev server does not exercise them. Verify
|
|
126
|
+
affected routes on the hosted preview and after an authorized publish.
|
|
@@ -111,8 +111,7 @@ fimo link <projectId> --relink
|
|
|
111
111
|
|
|
112
112
|
- The selected project shell: Next.js App Router by default, React Router with `--framework react-router`, a native React SPA with `--framework vite`, Astro with `--framework astro`, or SvelteKit with `--framework sveltekit`
|
|
113
113
|
- `.fimo/project.json` — links this directory to the remote site (read-only after creation)
|
|
114
|
-
- `.fimo/config.json` — project, optional Studio Pages route metadata, locale,
|
|
115
|
-
- `.fimo/agents/` — versioned agent bundles
|
|
114
|
+
- `.fimo/config.json` — project, optional Studio Pages route metadata, locale, and SEO
|
|
116
115
|
- `AGENTS.md` + `CLAUDE.md` — project rules (from the template) read by AGENTS.md-compatible tools and Claude Code. Both point the agent at `fimo skills get` to load the real skills on demand.
|
|
117
116
|
- A git repository with `fimo` as the remote, and — after dependencies install — an initial commit (including the lockfile) plus an initial push
|
|
118
117
|
|
|
@@ -134,45 +134,6 @@ Secrets and API keys are never returned. Do not call Firecrawl directly with an
|
|
|
134
134
|
|
|
135
135
|
For users, describe monitors as website change monitors: create a monitor, list monitors, pause/resume/delete a monitor, check a monitor now, and view recent checks. Keep storage and cleanup mechanics out of user-facing responses.
|
|
136
136
|
|
|
137
|
-
## Agent Access
|
|
138
|
-
|
|
139
|
-
Project-level setup makes Firecrawl available to the project. Add Firecrawl to an agent's `config.yaml` to let that
|
|
140
|
-
agent use it. If you omit `tools`, the agent gets every Firecrawl tool; use a tools map when you want a narrower set.
|
|
141
|
-
|
|
142
|
-
```yaml
|
|
143
|
-
integrations:
|
|
144
|
-
firecrawl:
|
|
145
|
-
enabled: true
|
|
146
|
-
```
|
|
147
|
-
|
|
148
|
-
Selective access:
|
|
149
|
-
|
|
150
|
-
```yaml
|
|
151
|
-
integrations:
|
|
152
|
-
firecrawl:
|
|
153
|
-
enabled: true
|
|
154
|
-
tools:
|
|
155
|
-
search: true
|
|
156
|
-
scrape: true
|
|
157
|
-
map: false
|
|
158
|
-
crawl: false
|
|
159
|
-
'monitor.list': true
|
|
160
|
-
'monitor.create': false
|
|
161
|
-
```
|
|
162
|
-
|
|
163
|
-
After editing agent config:
|
|
164
|
-
|
|
165
|
-
```bash
|
|
166
|
-
fimo validate
|
|
167
|
-
fimo agents integrations seo-researcher
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
For deployed or scheduled agents, deploy the bundle after changing `.fimo/agents/<name>/config.yaml`:
|
|
171
|
-
|
|
172
|
-
```bash
|
|
173
|
-
fimo deploy
|
|
174
|
-
```
|
|
175
|
-
|
|
176
137
|
## Ideal Agent Path
|
|
177
138
|
|
|
178
139
|
1. Confirm the user wants public web inspection, not private data access.
|
|
@@ -187,8 +148,7 @@ fimo deploy
|
|
|
187
148
|
- `crawl --limit <small>` to read several pages.
|
|
188
149
|
Treat search excerpts as concise evidence for straightforward questions. Scrape the source for full context,
|
|
189
150
|
exact quotations, implementation details, ambiguous claims, or high-stakes verification.
|
|
190
|
-
7.
|
|
191
|
-
8. Keep findings in the agent report or task output; do not write scraped content into source files unless the user asks.
|
|
151
|
+
7. Keep findings in the chat reply or task output; do not write scraped content into source files unless the user asks.
|
|
192
152
|
|
|
193
153
|
## Failure Modes
|
|
194
154
|
|
|
@@ -16,7 +16,7 @@ fimo integrations status firecrawl
|
|
|
16
16
|
|
|
17
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
|
-
When running inside an
|
|
19
|
+
When running inside an agent session, `fimo integrations list` shows only the integrations the project has enabled for that session.
|
|
20
20
|
|
|
21
21
|
## Add a remote MCP server
|
|
22
22
|
|
|
@@ -91,40 +91,4 @@ does not change the project default integration setup, and built-in services hav
|
|
|
91
91
|
|
|
92
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.
|
|
93
93
|
|
|
94
|
-
For Firecrawl-specific recipes
|
|
95
|
-
|
|
96
|
-
## Agent Access Policy
|
|
97
|
-
|
|
98
|
-
Project integrations are enabled at the project level. An agent opts into an integration in
|
|
99
|
-
`.fimo/agents/<name>/config.yaml` (or the legacy root `agents/<name>/config.yaml`):
|
|
100
|
-
|
|
101
|
-
When `tools` is omitted, the agent can use every tool currently exposed by that integration. Add a `tools` map only
|
|
102
|
-
when the agent needs a narrower set:
|
|
103
|
-
|
|
104
|
-
```yaml
|
|
105
|
-
integrations:
|
|
106
|
-
firecrawl:
|
|
107
|
-
enabled: true
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
For a narrower allowlist, add the tools explicitly:
|
|
111
|
-
|
|
112
|
-
```yaml
|
|
113
|
-
integrations:
|
|
114
|
-
firecrawl:
|
|
115
|
-
enabled: true
|
|
116
|
-
tools:
|
|
117
|
-
scrape: true
|
|
118
|
-
crawl: false
|
|
119
|
-
'monitor.list': true
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
If an integration is omitted or disabled, the agent cannot use it. If an explicit `tools` map has no `true` entries, it also grants no tools. With no map, newly available provider tools are included automatically on the next run.
|
|
123
|
-
|
|
124
|
-
Run `fimo validate` after editing agent config to check local shape plus project-level integration setup.
|
|
125
|
-
|
|
126
|
-
Preview one agent's local policy with:
|
|
127
|
-
|
|
128
|
-
```bash
|
|
129
|
-
fimo agents integrations seo-researcher
|
|
130
|
-
```
|
|
94
|
+
For Firecrawl-specific recipes and JSON examples, load `references/integrations/firecrawl.md`.
|
|
@@ -45,4 +45,4 @@ with `projectId`; update accepts `content`.
|
|
|
45
45
|
|
|
46
46
|
Settings also offers **Draft from website**. It runs analysis in the background and returns an editable
|
|
47
47
|
draft for review. Only an explicit **Save** updates shared knowledge; drafting does not grant permission
|
|
48
|
-
to write it.
|
|
48
|
+
to write it.
|
|
@@ -100,10 +100,10 @@ fimo mcp run sentry search_issues --input @request.json
|
|
|
100
100
|
Omit `--input` when the tool takes no arguments. Use inline JSON, a project-relative `@file`, or `--input -` to read JSON
|
|
101
101
|
from stdin.
|
|
102
102
|
|
|
103
|
-
## Studio
|
|
103
|
+
## Studio chat
|
|
104
104
|
|
|
105
|
-
Remote MCP servers remain normal project integrations underneath the focused CLI. Studio chat and
|
|
106
|
-
|
|
105
|
+
Remote MCP servers remain normal project integrations underneath the focused CLI. Studio chat discovers and runs them
|
|
106
|
+
through:
|
|
107
107
|
|
|
108
108
|
```bash
|
|
109
109
|
fimo integrations list
|
|
@@ -111,9 +111,8 @@ fimo integrations info mcp_sentry
|
|
|
111
111
|
fimo integrations run mcp_sentry search_issues --input '{"query":"open regressions"}'
|
|
112
112
|
```
|
|
113
113
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
a direct connection to the remote server.
|
|
114
|
+
Studio receives a frozen snapshot of the integrations enabled when the turn starts. It never receives the underlying
|
|
115
|
+
credential or opens a direct connection to the remote server.
|
|
117
116
|
|
|
118
117
|
## Supported servers
|
|
119
118
|
|
|
@@ -9,7 +9,7 @@ fimo preview url --branch main --json
|
|
|
9
9
|
curl -L "$(fimo preview url)"
|
|
10
10
|
```
|
|
11
11
|
|
|
12
|
-
The command returns the hosted deployment URL in every output mode
|
|
12
|
+
The command returns the hosted deployment URL in every output mode: every live Branch except production owns a hosted build.
|
|
13
13
|
|
|
14
14
|
If the current generation is queued or building, the command waits up to five minutes, polling with a backoff. It stops at once — without waiting — on a state waiting cannot change: a build that failed, and a Branch with no hosted preview (production, or a Branch nothing has changed yet). Every failure returns `PREVIEW_URL_FAILED`; read `error.message` for which one it was and `error.hint` for the next step. Only the timeout is worth retrying.
|
|
15
15
|
|
|
@@ -55,23 +55,7 @@ and the active git branch; hosted preview and production inject it directly.
|
|
|
55
55
|
|
|
56
56
|
Local env files are ignored by git in Fimo sites. They are for local development only; deployment reads project variables from Fimo and injects them into the remote build.
|
|
57
57
|
|
|
58
|
-
## Agent Secrets
|
|
59
|
-
|
|
60
|
-
Agents receive only the secrets they request in their own config.
|
|
61
|
-
|
|
62
|
-
```bash
|
|
63
|
-
fimo agents secrets add seo-publisher FIRECRAWL_API_KEY
|
|
64
|
-
fimo agents secrets list seo-publisher
|
|
65
|
-
fimo agents secrets remove seo-publisher FIRECRAWL_API_KEY
|
|
66
|
-
fimo agents validate
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
`fimo agents secrets add` edits `.fimo/agents/<name>/config.yaml`. It does not create or rotate the secret value. Use `fimo secrets add` to create the value or `fimo secrets update` to rotate it.
|
|
70
|
-
|
|
71
|
-
`fimo agents validate` checks that required agent secrets exist in the project. A running agent keeps the Branch it started with; the next run reads the deployed agent config again.
|
|
72
|
-
|
|
73
58
|
## Choosing Between Them
|
|
74
59
|
|
|
75
60
|
- If the value can safely be visible in browser code or page source, use `fimo vars add`.
|
|
76
61
|
- If leaking the value would be a problem, use `fimo secrets add`.
|
|
77
|
-
- If an agent needs a secret, first store it with `fimo secrets add`, then request it in that agent config with `fimo agents secrets add`.
|
|
@@ -26,7 +26,6 @@ Run this before writing a custom payload. The list shows supported event types,
|
|
|
26
26
|
|
|
27
27
|
- Forms: `form.submitted`
|
|
28
28
|
- Publish: `publish.started`, `publish.succeeded`, `publish.failed`, `publish.unpublished`
|
|
29
|
-
- Agents: run started/completed/failed/cancelled and review requested/resolved
|
|
30
29
|
- Analytics: `analytics.report_ready`
|
|
31
30
|
- Media: uploaded/updated/deleted
|
|
32
31
|
- Entries: `entry.changed`
|
|
@@ -108,7 +107,6 @@ Available filters are event-specific:
|
|
|
108
107
|
|
|
109
108
|
- `--environments <selector>` for Main Branch (`main`), All Branches (`all`), Production (`production`), Automatic previews (`preview`), or one custom Environment ID; the default is `main`
|
|
110
109
|
- `--form <id>` for `form.submitted`
|
|
111
|
-
- `--agent <name>` for agent events
|
|
112
110
|
- `--media-type <image|video|audio|document|other>` for media events
|
|
113
111
|
- `--action <created|updated|deleted>`, `--content-type <name>`, and `--locale <locale>` for `entry.changed`
|
|
114
112
|
|
|
@@ -90,6 +90,7 @@ For pageview installation or debugging, read [references/analytics.md](reference
|
|
|
90
90
|
## Non-negotiable boundaries
|
|
91
91
|
|
|
92
92
|
- Do not hardcode editor-owned collections, page content, labels, or media in JSX.
|
|
93
|
+
- Do not commit image or video files to the repository (`public/`, `static/`, `src/assets/`, or anywhere else). Upload every image or video you create, download, or receive as a local file with `fimo assets upload` (`fimo assets bulk-upload` for a batch) and reference the returned URL. Media from `fimo image …` and `fimo video …` tasks is already in the media library; use its URL instead of downloading it into the repository. A repository file has no asset ID, cannot be replaced in Studio, skips Fimo image optimization, and is invisible to asset usage checks. Only favicons and app icons (`favicon*`, `apple-touch-icon*`, `apple-icon*`, `android-chrome*`, `mstile*`, `icon*`), framework metadata images (`opengraph-image*`, `twitter-image*`), SVG icons and logos, and `robots.txt` stay in the repository.
|
|
93
94
|
- Do not hand-roll content API fetches when a generated client covers the read.
|
|
94
95
|
- Do not hand-construct `FimoString`, `FimoMedia`, or other tracked values.
|
|
95
96
|
- Do not replace an application's router, locale library, URL policy, or SEO integration merely to add Fimo.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> For the CLI commands (`fimo assets upload`, `fimo image generate`, folder management) and the "when to generate AI images" workflow rules, see **`fimo-cli/references/assets.md`**.
|
|
4
4
|
|
|
5
|
-
This file covers media fields and the Fimo image components.
|
|
5
|
+
This file covers media fields and the Fimo image components. Image and video bytes live in the media library, never in the repository; see `SKILL.md` § Non-negotiable boundaries for the rule and its exceptions.
|
|
6
6
|
|
|
7
7
|
## Media field values
|
|
8
8
|
|
|
@@ -39,10 +39,10 @@ Generated reads wrap each media object in `FimoMedia`. Its `id`, `alt`, `name`,
|
|
|
39
39
|
|
|
40
40
|
Import the primitives from the active framework adapter: `fimo-next` on the Next server, `fimo-next/client` in Next Client Components, `fimo-react` in React Router/Vite, or `fimo/astro/components` in Astro pages.
|
|
41
41
|
|
|
42
|
-
| Asset source
|
|
43
|
-
|
|
|
44
|
-
| Schema `media` field on an entry
|
|
45
|
-
|
|
|
42
|
+
| Asset source | Component | Pass via |
|
|
43
|
+
| ----------------------------------- | --------------------- | ------------------------- |
|
|
44
|
+
| Schema `media` field on an entry | `<Image>` / `<Video>` | `value={post.coverImage}` |
|
|
45
|
+
| Media-library URL referenced inline | `<StaticImage>` | `src="https://..."` |
|
|
46
46
|
|
|
47
47
|
```tsx
|
|
48
48
|
import { Image, StaticImage, Video } from 'fimo-next';
|
|
@@ -124,7 +124,7 @@ Write these into the project's existing theme tokens and reference the tokens fr
|
|
|
124
124
|
- **Treatment:** Full-bleed, contained, overlays, filters
|
|
125
125
|
- **Hero:** Specific direction for hero imagery
|
|
126
126
|
|
|
127
|
-
If the user hasn't supplied images and one is needed, run `fimo image generate --prompt "..."` and reuse the returned `url` or `id`. Run `fimo image generate --help` for current flags. See `references/assets.md`.
|
|
127
|
+
If the user hasn't supplied images and one is needed, run `fimo image generate --prompt "..."` and reuse the returned `url` or `id`. Run `fimo image generate --help` for current flags. Upload any image that exists only as a local file before using it (`SKILL.md` § Non-negotiable boundaries). See `references/assets.md`.
|
|
128
128
|
|
|
129
129
|
### Iconography
|
|
130
130
|
|
|
@@ -57,16 +57,7 @@ const nextConfig: NextConfig = {};
|
|
|
57
57
|
export default withFimo(nextConfig);
|
|
58
58
|
```
|
|
59
59
|
|
|
60
|
-
Preserve existing config fields and config-function logic.
|
|
61
|
-
does not rewrite response headers or adapt application-owned CSP. A restrictive
|
|
62
|
-
policy may need a manual Preview adaptation; inspect actual framing and blocked
|
|
63
|
-
requests, preserve production protections, and verify the result in a browser.
|
|
64
|
-
`frame-ancestors` permits the Studio parent, not the app's preview origin or a
|
|
65
|
-
value derived from a preview-origin variable. `script-src`, `connect-src`,
|
|
66
|
-
`frame-src`, and `form-action` concern resources/endpoints used by the iframe;
|
|
67
|
-
use the resolved connection and observed requests. Never add a Studio-parent
|
|
68
|
-
WebSocket to application CSP. Scope exceptions to Preview and keep unrelated
|
|
69
|
-
security headers unchanged.
|
|
60
|
+
Preserve existing config fields and config-function logic.
|
|
70
61
|
|
|
71
62
|
## Client dependency
|
|
72
63
|
|
|
@@ -46,7 +46,7 @@ Blocks do not change this rule. Every visible nested scalar is source-tracked to
|
|
|
46
46
|
|
|
47
47
|
Do not render those values as `{program.title}` or `{highlight.label}`. That displays text but bypasses the primitive that Studio uses to resolve the exact nested edit target.
|
|
48
48
|
|
|
49
|
-
Use `<StaticImage>` only when the image is deliberately not editor-managed.
|
|
49
|
+
Use `<StaticImage>` only when the image is deliberately not editor-managed. Its `src` is still a media-library URL; see `SKILL.md` § Non-negotiable boundaries.
|
|
50
50
|
|
|
51
51
|
## Wrapper values in JavaScript logic
|
|
52
52
|
|
|
@@ -105,32 +105,11 @@ Do not create or edit `.env` / `.env.local` for a linked project's Fimo
|
|
|
105
105
|
connection. Run the project's normal `next dev`, `next build`, and `next start`
|
|
106
106
|
commands, then exercise at least one server read and one client-side data read.
|
|
107
107
|
|
|
108
|
-
## Preview
|
|
108
|
+
## Preview integration
|
|
109
109
|
|
|
110
110
|
Keep the generated `FimoProvider` and `withFimo` integration. It supports
|
|
111
111
|
rendering Fimo Preview in Fimo Studio and enabling Edit Mode.
|
|
112
112
|
|
|
113
|
-
The application owns response and security headers; `withFimo` currently does
|
|
114
|
-
not rewrite them or adapt CSP automatically. A restrictive policy may still
|
|
115
|
-
need a manual Preview adaptation. Inspect framing behavior and response headers
|
|
116
|
-
first. Scope changes to Preview, preserve production protections and unrelated
|
|
117
|
-
security headers, and record them in the runtime report's Hosting section.
|
|
118
|
-
When the existing policy sends `X-Frame-Options` or an unconditional
|
|
119
|
-
`frame-ancestors` block, condition or relax that framing control only for the
|
|
120
|
-
verified Preview embedding context; retain it for non-Preview and production
|
|
121
|
-
responses.
|
|
122
|
-
|
|
123
|
-
- `frame-ancestors` controls which Fimo Studio parent may embed the app. The
|
|
124
|
-
incident's manual fix used the current Studio sources `https://fimo.ai` and
|
|
125
|
-
`https://*.fimo.ai`. Verify the Studio parent for the target environment;
|
|
126
|
-
these sources are not a universal resource allowlist. Never derive them from
|
|
127
|
-
a preview-origin variable. The sandbox or hosted preview origin identifies
|
|
128
|
-
the app being framed, not its ancestor.
|
|
129
|
-
- `script-src` controls scripts, `connect-src` API and WebSocket connections,
|
|
130
|
-
`frame-src` frames embedded by the app, and `form-action` form submission
|
|
131
|
-
destinations. Base Fimo sources on the resolved connection and observed
|
|
132
|
-
requests made by the preview iframe, only for resources/endpoints it uses.
|
|
133
|
-
|
|
134
113
|
## Locales
|
|
135
114
|
|
|
136
115
|
Keep these claims separate, and treat any one of them as unproven until its
|
|
@@ -112,17 +112,7 @@ and passes only the public connection to the browser. Run the normal `next dev`,
|
|
|
112
112
|
Owned by the runtime lane; verified here read-only.
|
|
113
113
|
|
|
114
114
|
- The target starts locally: the dev server responds without startup errors.
|
|
115
|
-
- Fimo Preview renders the target in Fimo Studio and Edit Mode works.
|
|
116
|
-
is blocked, verify the actual framing behavior and response headers. The
|
|
117
|
-
application owns its security policy; any Preview exception must preserve
|
|
118
|
-
production protections and unrelated security headers.
|
|
119
|
-
- Check CSP sources by purpose: `frame-ancestors` permits the Studio parent;
|
|
120
|
-
the app's preview origin is the framed site. `script-src`, `connect-src`,
|
|
121
|
-
`frame-src`, and `form-action` use resolved/observed Fimo resources and
|
|
122
|
-
endpoints actually used by the iframe. Do not copy ancestor sources into
|
|
123
|
-
resource directives or derive them from a preview-origin variable.
|
|
124
|
-
- `withFimo` does not rewrite response headers. Verify any required manual
|
|
125
|
-
Preview adaptation of an application-owned restrictive policy.
|
|
115
|
+
- Fimo Preview renders the target in Fimo Studio and Edit Mode works.
|
|
126
116
|
- The runtime report covers local startup, preview embedding, build, the
|
|
127
117
|
resolved Fimo connection, header translations, and integration env-key
|
|
128
118
|
names, with every claim backed by evidence.
|
|
@@ -6,7 +6,7 @@ description: >-
|
|
|
6
6
|
Triggers: "in Fimo Studio", "in the dashboard", "in the web app",
|
|
7
7
|
"how do I X in the UI", or screenshots of the dashboard. Topics
|
|
8
8
|
covered: dashboard content and CMS, publishing from the dashboard,
|
|
9
|
-
dashboard SEO/domain settings, site connections,
|
|
9
|
+
dashboard SEO/domain settings, site connections, schedules and run history, outbound webhooks,
|
|
10
10
|
visual editing, version history UI, dashboard sharing/billing, dashboard chat,
|
|
11
11
|
and the command palette. Never describe
|
|
12
12
|
UI locations, buttons, or panels from memory — always read the relevant
|
|
@@ -34,8 +34,8 @@ Use plain, friendly language. Describe what users see, where they click, and wha
|
|
|
34
34
|
|
|
35
35
|
## Studio layout
|
|
36
36
|
|
|
37
|
-
- **Header (desktop):** the site menu (site name; History is here) and the Branch switcher, then the workspaces: Chats, Getting started, Preview, Content, Assets,
|
|
38
|
-
- **Phone:** bottom tabs for Chat, Preview
|
|
37
|
+
- **Header (desktop):** the site menu (site name; History is here) and the Branch switcher, then the workspaces: Chats, Getting started, Preview, Content, Assets, Analytics, Settings. Only workspaces the user can access appear. Workspaces that do not fit move into **More**. On the right: Earn free credits, Invite, Clone, Publish, and Merge on a Branch.
|
|
38
|
+
- **Phone:** bottom tabs for Chat, Preview and Settings. Invite, Earn free credits and Clone ("Work on this site locally") move into the site menu.
|
|
39
39
|
- **Settings:** General, Domains, Knowledge, SEO and Languages are listed directly. Models, Environments, Secrets, Schedules, Webhooks and Connections are under **Advanced settings**.
|
|
40
40
|
- **Shortcuts:** Alt+1 Preview, Alt+2 Content, Alt+3 Assets, Alt+5 Settings, Alt+E edit mode, Cmd/Ctrl+K command palette.
|
|
41
41
|
|
|
@@ -56,7 +56,6 @@ Read the relevant reference file when the user's question matches a topic.
|
|
|
56
56
|
| AI Chat | references/ai-chat.md | "What can the AI do?", "How do I give context?" |
|
|
57
57
|
| Site Knowledge | references/knowledge.md | "Set brand guidance", "Website goals", "Draft knowledge from the site" |
|
|
58
58
|
| SEO Settings | references/seo-settings.md | "How do I set up SEO?", "Favicon, title, share image" |
|
|
59
|
-
| Agents | references/agents.md | "Run an agent", "Pause an agent", "Next agent run" |
|
|
60
59
|
| Schedules | references/schedules.md | "Recurring commands", "Run history", "Run now" |
|
|
61
60
|
| Webhooks | references/webhooks.md | "React to forms", "Send events to another service" |
|
|
62
61
|
| Connections | references/connections.md | "Connect a service", "Add an MCP server" |
|
|
@@ -66,7 +65,6 @@ Read the relevant reference file when the user's question matches a topic.
|
|
|
66
65
|
| Sharing & Collaboration | references/sharing-and-collaboration.md | "How do I share?", "How do I invite someone?" |
|
|
67
66
|
| Site Creation | references/project-creation.md | "How do I start a new site?" |
|
|
68
67
|
| Billing & Credits | references/billing-and-credits.md | "What are credits?", "How do I upgrade?", "How do referrals work?" |
|
|
69
|
-
| Drawing & Wireframing | references/drawing-and-wireframing.md | "How do I sketch my idea?" |
|
|
70
68
|
|
|
71
69
|
## Cross-feature references
|
|
72
70
|
|
|
@@ -76,10 +74,9 @@ Read the relevant reference file when the user's question matches a topic.
|
|
|
76
74
|
| Custom domains | Publishing (must publish first), Billing (premium required) |
|
|
77
75
|
| Adding images | Media Library, AI Chat, Edit Mode |
|
|
78
76
|
| Content/CMS | AI Chat, Media Library |
|
|
79
|
-
| Webhooks | Site secrets, Forms, Publishing
|
|
80
|
-
| Connections | AI Chat,
|
|
81
|
-
|
|
|
82
|
-
| Schedules | Site secrets, Environments, Agents |
|
|
77
|
+
| Webhooks | Site secrets, Forms, Publishing |
|
|
78
|
+
| Connections | AI Chat, Site secrets |
|
|
79
|
+
| Schedules | Site secrets, Environments |
|
|
83
80
|
| Visual changes | Edit Mode (CMS content), AI Chat (layout, styling, and code changes) |
|
|
84
81
|
| Something went wrong | Version History, AI Chat |
|
|
85
82
|
| Working with others | Sharing, Collaboration |
|