From 0db995c458a6b109a18113170f1bb831f7af54ed Mon Sep 17 00:00:00 2001 From: Brett Wallace Date: Mon, 26 Oct 2026 16:22:38 -0700 Subject: [PATCH 1/6] fix(agent-core): drop retired docs links from the authoring skill The skill and its three synced copies linked the MCP setup, credentials, call-surface, authoring-guide and quick-start pages of docs.sapiom.ai, which were retired. The /capabilities links stay. Co-Authored-By: Claude Opus 5.5 --- .../skills/sapiom-agent-authoring/SKILL.md | 12 +++--------- .../.claude/skills/sapiom-agent-authoring/SKILL.md | 12 +++--------- .../.claude/skills/sapiom-agent-authoring/SKILL.md | 12 +++--------- .../sapiom/skills/sapiom-agent-authoring/SKILL.md | 12 +++--------- 4 files changed, 12 insertions(+), 36 deletions(-) diff --git a/packages/agent-core/skills/sapiom-agent-authoring/SKILL.md b/packages/agent-core/skills/sapiom-agent-authoring/SKILL.md index 81c1db379..fe15a4479 100644 --- a/packages/agent-core/skills/sapiom-agent-authoring/SKILL.md +++ b/packages/agent-core/skills/sapiom-agent-authoring/SKILL.md @@ -51,8 +51,7 @@ first: claude mcp add sapiom -- npx -y @sapiom/mcp ``` -Other clients: run `npx -y @sapiom/mcp` as a local (stdio) MCP server — see -[docs.sapiom.ai](https://docs.sapiom.ai/integration/mcp-servers/setup) for per-client config. +Other clients: run `npx -y @sapiom/mcp` as a local (stdio) MCP server. Sapiom's other server, **the hosted capability server** (`https://api.sapiom.ai/v1/mcp`), is for a one-off call with no automation to keep; which server a task belongs to, and what local work does and does not spend, is the served section @@ -323,8 +322,7 @@ Database lifetime and metering: served section ### Secrets, `agents.launch`, receipts, App Link webhooks Taught once, in the served text — not restated here. Per-agent secrets and the read-only Vault: -[Capabilities from steps](https://api.sapiom.ai/v1/agents/authoring-rules#capability-catalog) and -[Credentials and configuration](https://docs.sapiom.ai/reference/credentials-and-configuration). +[Capabilities from steps](https://api.sapiom.ai/v1/agents/authoring-rules#capability-catalog). Fire-and-forget dispatch with `ctx.sapiom.agents.launch`: "Composing Deployed Agents" below and [Composing deployed agents](https://api.sapiom.ai/v1/agents/authoring-rules#agent-composition). Receipts and manual replay of inbound events: the local authoring server's served primer (in @@ -410,8 +408,7 @@ The full rule — the worked example (`llm.run` with `output`, read back with `s as output, the label rule and the result's `servedClass`/`lane` disclosure, and how to debug a run in the Run Inspector — is the served section [Calling LLMs from steps](https://api.sapiom.ai/v1/agents/authoring-rules#llm-call-surface). -Read it before the first `llm.*` / `models.run` / `agents.run` call. Customer guide: -[Choose a call surface](https://docs.sapiom.ai/guides/choose-a-call-surface). +Read it before the first `llm.*` / `models.run` / `agents.run` call. @@ -739,8 +736,5 @@ Write each step the way it should run in production — never weaken logic to sh | Resource | What it covers | | ---------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | | [Platform rules (served)](https://api.sapiom.ai/v1/agents/authoring-rules) | The live text every platform chapter above summarizes and points at; this copy was written against release 1.1 | -| [Authoring guide](https://docs.sapiom.ai/agents/authoring) | Full step model, failure patterns, pause/resume, determinism | -| [Quickstart](https://docs.sapiom.ai/agents/quick-start) | Scaffold → write → test → deploy walkthrough | | [Capabilities](https://docs.sapiom.ai/capabilities) | The full `ctx.sapiom.*` catalog with pricing | -| [Choose a call surface](https://docs.sapiom.ai/guides/choose-a-call-surface) | `llm.run` vs `models.run` vs `agents.run` — which to call and why | | `AGENTS.md` in your scaffold | The quick in-project reference | diff --git a/packages/agent-core/templates/coding-pause/.claude/skills/sapiom-agent-authoring/SKILL.md b/packages/agent-core/templates/coding-pause/.claude/skills/sapiom-agent-authoring/SKILL.md index 81c1db379..fe15a4479 100644 --- a/packages/agent-core/templates/coding-pause/.claude/skills/sapiom-agent-authoring/SKILL.md +++ b/packages/agent-core/templates/coding-pause/.claude/skills/sapiom-agent-authoring/SKILL.md @@ -51,8 +51,7 @@ first: claude mcp add sapiom -- npx -y @sapiom/mcp ``` -Other clients: run `npx -y @sapiom/mcp` as a local (stdio) MCP server — see -[docs.sapiom.ai](https://docs.sapiom.ai/integration/mcp-servers/setup) for per-client config. +Other clients: run `npx -y @sapiom/mcp` as a local (stdio) MCP server. Sapiom's other server, **the hosted capability server** (`https://api.sapiom.ai/v1/mcp`), is for a one-off call with no automation to keep; which server a task belongs to, and what local work does and does not spend, is the served section @@ -323,8 +322,7 @@ Database lifetime and metering: served section ### Secrets, `agents.launch`, receipts, App Link webhooks Taught once, in the served text — not restated here. Per-agent secrets and the read-only Vault: -[Capabilities from steps](https://api.sapiom.ai/v1/agents/authoring-rules#capability-catalog) and -[Credentials and configuration](https://docs.sapiom.ai/reference/credentials-and-configuration). +[Capabilities from steps](https://api.sapiom.ai/v1/agents/authoring-rules#capability-catalog). Fire-and-forget dispatch with `ctx.sapiom.agents.launch`: "Composing Deployed Agents" below and [Composing deployed agents](https://api.sapiom.ai/v1/agents/authoring-rules#agent-composition). Receipts and manual replay of inbound events: the local authoring server's served primer (in @@ -410,8 +408,7 @@ The full rule — the worked example (`llm.run` with `output`, read back with `s as output, the label rule and the result's `servedClass`/`lane` disclosure, and how to debug a run in the Run Inspector — is the served section [Calling LLMs from steps](https://api.sapiom.ai/v1/agents/authoring-rules#llm-call-surface). -Read it before the first `llm.*` / `models.run` / `agents.run` call. Customer guide: -[Choose a call surface](https://docs.sapiom.ai/guides/choose-a-call-surface). +Read it before the first `llm.*` / `models.run` / `agents.run` call. @@ -739,8 +736,5 @@ Write each step the way it should run in production — never weaken logic to sh | Resource | What it covers | | ---------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | | [Platform rules (served)](https://api.sapiom.ai/v1/agents/authoring-rules) | The live text every platform chapter above summarizes and points at; this copy was written against release 1.1 | -| [Authoring guide](https://docs.sapiom.ai/agents/authoring) | Full step model, failure patterns, pause/resume, determinism | -| [Quickstart](https://docs.sapiom.ai/agents/quick-start) | Scaffold → write → test → deploy walkthrough | | [Capabilities](https://docs.sapiom.ai/capabilities) | The full `ctx.sapiom.*` catalog with pricing | -| [Choose a call surface](https://docs.sapiom.ai/guides/choose-a-call-surface) | `llm.run` vs `models.run` vs `agents.run` — which to call and why | | `AGENTS.md` in your scaffold | The quick in-project reference | diff --git a/packages/agent-core/templates/default/.claude/skills/sapiom-agent-authoring/SKILL.md b/packages/agent-core/templates/default/.claude/skills/sapiom-agent-authoring/SKILL.md index 81c1db379..fe15a4479 100644 --- a/packages/agent-core/templates/default/.claude/skills/sapiom-agent-authoring/SKILL.md +++ b/packages/agent-core/templates/default/.claude/skills/sapiom-agent-authoring/SKILL.md @@ -51,8 +51,7 @@ first: claude mcp add sapiom -- npx -y @sapiom/mcp ``` -Other clients: run `npx -y @sapiom/mcp` as a local (stdio) MCP server — see -[docs.sapiom.ai](https://docs.sapiom.ai/integration/mcp-servers/setup) for per-client config. +Other clients: run `npx -y @sapiom/mcp` as a local (stdio) MCP server. Sapiom's other server, **the hosted capability server** (`https://api.sapiom.ai/v1/mcp`), is for a one-off call with no automation to keep; which server a task belongs to, and what local work does and does not spend, is the served section @@ -323,8 +322,7 @@ Database lifetime and metering: served section ### Secrets, `agents.launch`, receipts, App Link webhooks Taught once, in the served text — not restated here. Per-agent secrets and the read-only Vault: -[Capabilities from steps](https://api.sapiom.ai/v1/agents/authoring-rules#capability-catalog) and -[Credentials and configuration](https://docs.sapiom.ai/reference/credentials-and-configuration). +[Capabilities from steps](https://api.sapiom.ai/v1/agents/authoring-rules#capability-catalog). Fire-and-forget dispatch with `ctx.sapiom.agents.launch`: "Composing Deployed Agents" below and [Composing deployed agents](https://api.sapiom.ai/v1/agents/authoring-rules#agent-composition). Receipts and manual replay of inbound events: the local authoring server's served primer (in @@ -410,8 +408,7 @@ The full rule — the worked example (`llm.run` with `output`, read back with `s as output, the label rule and the result's `servedClass`/`lane` disclosure, and how to debug a run in the Run Inspector — is the served section [Calling LLMs from steps](https://api.sapiom.ai/v1/agents/authoring-rules#llm-call-surface). -Read it before the first `llm.*` / `models.run` / `agents.run` call. Customer guide: -[Choose a call surface](https://docs.sapiom.ai/guides/choose-a-call-surface). +Read it before the first `llm.*` / `models.run` / `agents.run` call. @@ -739,8 +736,5 @@ Write each step the way it should run in production — never weaken logic to sh | Resource | What it covers | | ---------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | | [Platform rules (served)](https://api.sapiom.ai/v1/agents/authoring-rules) | The live text every platform chapter above summarizes and points at; this copy was written against release 1.1 | -| [Authoring guide](https://docs.sapiom.ai/agents/authoring) | Full step model, failure patterns, pause/resume, determinism | -| [Quickstart](https://docs.sapiom.ai/agents/quick-start) | Scaffold → write → test → deploy walkthrough | | [Capabilities](https://docs.sapiom.ai/capabilities) | The full `ctx.sapiom.*` catalog with pricing | -| [Choose a call surface](https://docs.sapiom.ai/guides/choose-a-call-surface) | `llm.run` vs `models.run` vs `agents.run` — which to call and why | | `AGENTS.md` in your scaffold | The quick in-project reference | diff --git a/plugins/sapiom/skills/sapiom-agent-authoring/SKILL.md b/plugins/sapiom/skills/sapiom-agent-authoring/SKILL.md index 81c1db379..fe15a4479 100644 --- a/plugins/sapiom/skills/sapiom-agent-authoring/SKILL.md +++ b/plugins/sapiom/skills/sapiom-agent-authoring/SKILL.md @@ -51,8 +51,7 @@ first: claude mcp add sapiom -- npx -y @sapiom/mcp ``` -Other clients: run `npx -y @sapiom/mcp` as a local (stdio) MCP server — see -[docs.sapiom.ai](https://docs.sapiom.ai/integration/mcp-servers/setup) for per-client config. +Other clients: run `npx -y @sapiom/mcp` as a local (stdio) MCP server. Sapiom's other server, **the hosted capability server** (`https://api.sapiom.ai/v1/mcp`), is for a one-off call with no automation to keep; which server a task belongs to, and what local work does and does not spend, is the served section @@ -323,8 +322,7 @@ Database lifetime and metering: served section ### Secrets, `agents.launch`, receipts, App Link webhooks Taught once, in the served text — not restated here. Per-agent secrets and the read-only Vault: -[Capabilities from steps](https://api.sapiom.ai/v1/agents/authoring-rules#capability-catalog) and -[Credentials and configuration](https://docs.sapiom.ai/reference/credentials-and-configuration). +[Capabilities from steps](https://api.sapiom.ai/v1/agents/authoring-rules#capability-catalog). Fire-and-forget dispatch with `ctx.sapiom.agents.launch`: "Composing Deployed Agents" below and [Composing deployed agents](https://api.sapiom.ai/v1/agents/authoring-rules#agent-composition). Receipts and manual replay of inbound events: the local authoring server's served primer (in @@ -410,8 +408,7 @@ The full rule — the worked example (`llm.run` with `output`, read back with `s as output, the label rule and the result's `servedClass`/`lane` disclosure, and how to debug a run in the Run Inspector — is the served section [Calling LLMs from steps](https://api.sapiom.ai/v1/agents/authoring-rules#llm-call-surface). -Read it before the first `llm.*` / `models.run` / `agents.run` call. Customer guide: -[Choose a call surface](https://docs.sapiom.ai/guides/choose-a-call-surface). +Read it before the first `llm.*` / `models.run` / `agents.run` call. @@ -739,8 +736,5 @@ Write each step the way it should run in production — never weaken logic to sh | Resource | What it covers | | ---------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | | [Platform rules (served)](https://api.sapiom.ai/v1/agents/authoring-rules) | The live text every platform chapter above summarizes and points at; this copy was written against release 1.1 | -| [Authoring guide](https://docs.sapiom.ai/agents/authoring) | Full step model, failure patterns, pause/resume, determinism | -| [Quickstart](https://docs.sapiom.ai/agents/quick-start) | Scaffold → write → test → deploy walkthrough | | [Capabilities](https://docs.sapiom.ai/capabilities) | The full `ctx.sapiom.*` catalog with pricing | -| [Choose a call surface](https://docs.sapiom.ai/guides/choose-a-call-surface) | `llm.run` vs `models.run` vs `agents.run` — which to call and why | | `AGENTS.md` in your scaffold | The quick in-project reference | From 691d01b2d90ac5e4d179648d2ffd9874eb1d0bdc Mon Sep 17 00:00:00 2001 From: Brett Wallace Date: Mon, 26 Oct 2026 16:22:38 -0700 Subject: [PATCH 2/6] fix(harness): drop retired docs links from Agent Studio The bundled system prompt's call-surface guide line, four of the five help-palette pages (agents and workflows quick starts, both MCP setup pages) and the first-run "Read documentation" link all pointed at docs pages that no longer exist. The palette keeps AI models, a capability page. The prompt snapshot digest moves with the prompt. Co-Authored-By: Claude Opus 5.5 --- packages/harness/src/profiles/default.test.ts | 3 +-- packages/harness/src/profiles/default.ts | 1 - .../harness/web/e2e/palette-search.spec.ts | 7 ++++--- packages/harness/web/e2e/welcome.spec.ts | 5 +---- .../web/src/components/NewSessionComposer.tsx | 9 --------- packages/harness/web/src/lib/docs.ts | 20 ------------------- packages/harness/web/src/lib/palette.test.ts | 2 +- packages/harness/web/src/styles.css | 11 ---------- 8 files changed, 7 insertions(+), 51 deletions(-) diff --git a/packages/harness/src/profiles/default.test.ts b/packages/harness/src/profiles/default.test.ts index 5491877a5..84689e196 100644 --- a/packages/harness/src/profiles/default.test.ts +++ b/packages/harness/src/profiles/default.test.ts @@ -12,7 +12,7 @@ const sha256 = (content: string) => * the copy it serves, so the two move together — see the drift-guard test below. */ const PINNED_PROMPT_DIGEST = - "a4a13da1ea4d960df634dd2946aef953a79bf6cae91907494cd6cbefc1db547a"; + "2158c2c45db76fc9a35f20f41a888cbdaf58bc393c751bf37360d807fc55199c"; const legacy = readFileSync( new URL("./fixtures/legacy-system-prompt.md", import.meta.url), @@ -128,7 +128,6 @@ describe("known served-prompt compatibility", () => { "Structured output = tool-use/schema output", "**Omit `model` entirely**", "Raw provider ids are never\nhonored", - "Guide: https://docs.sapiom.ai/guides/choose-a-call-surface.", ]) { expect(legacy).toContain(claim); expect(DEFAULT_SYSTEM_PROMPT).toContain(claim); diff --git a/packages/harness/src/profiles/default.ts b/packages/harness/src/profiles/default.ts index 42b0fdec9..faafb1290 100644 --- a/packages/harness/src/profiles/default.ts +++ b/packages/harness/src/profiles/default.ts @@ -51,7 +51,6 @@ nothing. Reach for \`small\`/\`medium\`/\`large\` only to choose a class deliberately. Raw provider ids are never honored. Results disclose the served class + lane. Debugging a run: the Run Inspector, or the per-step I/O endpoint documented in the guide. -Guide: https://docs.sapiom.ai/guides/choose-a-call-surface. Fixed answer set and you need a probability → \`ctx.sapiom.decisions.evaluate\` (yes/no, pick-one, rubric score from a System One decision model). Ask all independent questions over the same state diff --git a/packages/harness/web/e2e/palette-search.spec.ts b/packages/harness/web/e2e/palette-search.spec.ts index aba84432f..52f55ff05 100644 --- a/packages/harness/web/e2e/palette-search.spec.ts +++ b/packages/harness/web/e2e/palette-search.spec.ts @@ -111,12 +111,13 @@ test("the Docs tab searches the doc links and offers the docs site in the footer await page.getByTestId("command-palette-filter-docs").click(); const list = page.getByTestId("command-palette-list"); - await expect(list.getByText("Agents quick start")).toBeVisible(); + await expect(list.getByText("AI models")).toBeVisible(); await expect(page.getByTestId("command-palette-destination")).toContainText("Open documentation"); + await page.getByTestId("command-palette-input").fill("models"); + await expect(list.getByText("AI models")).toBeVisible(); await page.getByTestId("command-palette-input").fill("mcp"); - await expect(list.getByText("MCP servers: setup")).toBeVisible(); - await expect(list.getByText("Agents quick start")).toBeHidden(); + await expect(list.getByText("AI models")).toBeHidden(); }); test("a scoped tab never leaks other kinds into the results", async ({ page }) => { diff --git a/packages/harness/web/e2e/welcome.spec.ts b/packages/harness/web/e2e/welcome.spec.ts index b7724d01e..39c208c33 100644 --- a/packages/harness/web/e2e/welcome.spec.ts +++ b/packages/harness/web/e2e/welcome.spec.ts @@ -67,11 +67,8 @@ test.describe("first run", () => { await expect(page.locator(".composer-template-card").first()).toBeVisible(); await expect(page.getByTestId("composer-browse-templates")).toBeVisible(); - // First-run only: the one-time telemetry opt-in (SAP-1988) and docs. + // First-run only: the one-time telemetry opt-in (SAP-1988). await expect(page.getByTestId("welcome-consent")).toBeVisible(); - const docs = page.getByTestId("welcome-docs"); - await expect(docs).toHaveAttribute("href", "https://docs.sapiom.ai/agents/quick-start"); - await expect(docs).toHaveAttribute("target", "_blank"); await page.screenshot({ path: "web/e2e/screenshots/composer-home.png", fullPage: true }); }); diff --git a/packages/harness/web/src/components/NewSessionComposer.tsx b/packages/harness/web/src/components/NewSessionComposer.tsx index 216e5193d..0ad638777 100644 --- a/packages/harness/web/src/components/NewSessionComposer.tsx +++ b/packages/harness/web/src/components/NewSessionComposer.tsx @@ -697,15 +697,6 @@ export function NewSessionComposer({ default; change it anytime in Settings. - - Read documentation - )} diff --git a/packages/harness/web/src/lib/docs.ts b/packages/harness/web/src/lib/docs.ts index 775fc4a86..940428e28 100644 --- a/packages/harness/web/src/lib/docs.ts +++ b/packages/harness/web/src/lib/docs.ts @@ -18,29 +18,9 @@ export interface DocLink { } export const DOC_LINKS: readonly DocLink[] = [ - { - label: "Agents quick start", - meta: "Run your first agent", - href: "https://docs.sapiom.ai/agents/quick-start", - }, - { - label: "Workflows quick start", - meta: "Typed steps, gates and exits", - href: "https://docs.sapiom.ai/workflows/quick-start", - }, { label: "AI models", meta: "Which models a capability can call", href: "https://docs.sapiom.ai/capabilities/ai-models", }, - { - label: "MCP servers: setup", - meta: "Connect a server to a workspace", - href: "https://docs.sapiom.ai/integration/mcp-servers/setup", - }, - { - label: "MCP servers: remote", - meta: "Reach a server you do not host", - href: "https://docs.sapiom.ai/integration/mcp-servers/remote", - }, ]; diff --git a/packages/harness/web/src/lib/palette.test.ts b/packages/harness/web/src/lib/palette.test.ts index 43aaec3ff..8abaaf4ed 100644 --- a/packages/harness/web/src/lib/palette.test.ts +++ b/packages/harness/web/src/lib/palette.test.ts @@ -350,7 +350,7 @@ describe("rankPaletteItems filters", () => { it("the Docs tab lists the doc links and matches within them", () => { const unqueried = rank("", filterSources, "docs"); expect(unqueried.every((item) => item.kind === "doc")).toBe(true); - const queried = rank("mcp", filterSources, "docs"); + const queried = rank("models", filterSources, "docs"); expect(queried.length).toBeGreaterThan(0); expect(queried.every((item) => item.kind === "doc")).toBe(true); }); diff --git a/packages/harness/web/src/styles.css b/packages/harness/web/src/styles.css index b3c4ffbe4..100ea88f9 100644 --- a/packages/harness/web/src/styles.css +++ b/packages/harness/web/src/styles.css @@ -9199,17 +9199,6 @@ button.rail-footer-card:hover { color: var(--text-faint); line-height: 1.5; } -.composer-docs { - display: inline-flex; - align-items: center; - gap: var(--sp1); - color: var(--text-dim); - font-size: var(--type-label); - text-decoration: none; -} -.composer-docs:hover { - color: var(--text); -} /* ── Overview: a CARD ON TOP that introduces the app ────────────────────── Summoned from the account menu. An app-level overlay fixed over the WHOLE shell (rail, terminal, canvas), centred on a scrim, so re-reading what From b79e0f1198e64f46279457419df615e66c212e25 Mon Sep 17 00:00:00 2001 From: Brett Wallace Date: Mon, 26 Oct 2026 16:22:38 -0700 Subject: [PATCH 3/6] fix: drop the signals-guide and telemetry-page links The @sapiom/agent README linked a signals guide that is gone, and the first-run telemetry notice linked a /telemetry page that never existed. The notice still names the opt-out variable. Co-Authored-By: Claude Opus 5.5 --- packages/agent/README.md | 2 -- packages/analytics-core/src/analytics.ts | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/packages/agent/README.md b/packages/agent/README.md index 7855689f9..c555689a1 100644 --- a/packages/agent/README.md +++ b/packages/agent/README.md @@ -296,5 +296,3 @@ Three things worth knowing rather than assuming: the pair, so that id need not be the only run that resumes. `matched` counts the runs that actually resumed, which under-reports a partial fanout — read `message` whenever it is present. - -Full guide: [Using signals](https://docs.sapiom.ai/guides/use-signals). diff --git a/packages/analytics-core/src/analytics.ts b/packages/analytics-core/src/analytics.ts index 4a0bdb53d..23e424abb 100644 --- a/packages/analytics-core/src/analytics.ts +++ b/packages/analytics-core/src/analytics.ts @@ -15,7 +15,7 @@ import type { /** Printed to stderr once per machine, on the first-ever tracked event. */ export const FIRST_RUN_NOTICE = "Sapiom collects anonymous usage analytics to improve the SDK. " + - "Opt out: SAPIOM_TELEMETRY_DISABLED=1 (https://docs.sapiom.ai/telemetry)"; + "Opt out: SAPIOM_TELEMETRY_DISABLED=1"; let processSessionId: string | null = null; From 16a8fd064ee64a64a8c2116dde92dbaa2cbdb8bb Mon Sep 17 00:00:00 2001 From: Brett Wallace Date: Mon, 26 Oct 2026 16:22:38 -0700 Subject: [PATCH 4/6] chore: add a changeset for the retired docs links Co-Authored-By: Claude Opus 5.5 --- .changeset/drop-retired-docs-links.md | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 .changeset/drop-retired-docs-links.md diff --git a/.changeset/drop-retired-docs-links.md b/.changeset/drop-retired-docs-links.md new file mode 100644 index 000000000..24ee36317 --- /dev/null +++ b/.changeset/drop-retired-docs-links.md @@ -0,0 +1,8 @@ +--- +"@sapiom/agent-core": patch +"@sapiom/agent": patch +"@sapiom/harness": patch +"@sapiom/analytics-core": patch +--- + +Stop linking docs.sapiom.ai pages that no longer exist. The `sapiom-agent-authoring` skill and its scaffold copies, the Agent Studio system prompt, help palette and welcome screen, and the `@sapiom/agent` README drop links to the agent quick start, authoring guide, MCP setup, call-surface, credentials and signals guides. The first-run telemetry notice drops its link to a `/telemetry` page that never existed. Links to `/capabilities` pages are unchanged. From 3350faa45265eeaadddd3ba38ebf851418482e70 Mon Sep 17 00:00:00 2001 From: Brett Wallace Date: Mon, 26 Oct 2026 16:22:52 -0700 Subject: [PATCH 5/6] docs(harness): update the help-list and first-run footer comments The comments explained a five-page help list and a footer with a docs link. After the retired pages came out they describe one page and no link, so they now say what remains and why the rest went. Kept apart from the link removal because it changes what the comments claim. Co-Authored-By: Claude Opus 5.5 --- .../harness/web/src/components/NewSessionComposer.tsx | 3 ++- packages/harness/web/src/lib/docs.ts | 10 +++++----- packages/harness/web/src/styles.css | 2 +- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/packages/harness/web/src/components/NewSessionComposer.tsx b/packages/harness/web/src/components/NewSessionComposer.tsx index 0ad638777..dadba708c 100644 --- a/packages/harness/web/src/components/NewSessionComposer.tsx +++ b/packages/harness/web/src/components/NewSessionComposer.tsx @@ -93,7 +93,8 @@ interface NewSessionComposerProps { entries: HarnessEntry[]; onHarnessChange: (harness: HarnessKind) => void; /** Genuine first run (AppState.firstRun): shows the one-time telemetry - * opt-in + docs footer. */ + * opt-in footer. The docs link it also carried pointed at a page retired + * on 2026-10-23. */ firstRun: boolean; /** * Create the agent from this idea and open its first session. Rejects with diff --git a/packages/harness/web/src/lib/docs.ts b/packages/harness/web/src/lib/docs.ts index 940428e28..c00277755 100644 --- a/packages/harness/web/src/lib/docs.ts +++ b/packages/harness/web/src/lib/docs.ts @@ -1,11 +1,11 @@ /** * The documentation the finder can reach. * - * Five pages, not a mirror of the site's nav: these are the ones someone - * reaches for from inside the product — how to start an agent, how to start a - * workflow, which models a capability can call, and the two halves of MCP - * setup. Everything else is one click away behind the footer link, which is - * why this list gets to stay short instead of growing a page per release. + * One page, not a mirror of the site's nav: which models a capability can + * call. The list also held the agents and workflows quick starts and the two + * halves of MCP setup until those pages were retired (2026-10-23). + * Everything else is one click away behind the footer link, which is why this + * list gets to stay short instead of growing a page per release. */ export const DOCS_SITE = "https://docs.sapiom.ai/"; diff --git a/packages/harness/web/src/styles.css b/packages/harness/web/src/styles.css index 100ea88f9..085d4ee1c 100644 --- a/packages/harness/web/src/styles.css +++ b/packages/harness/web/src/styles.css @@ -9177,7 +9177,7 @@ button.rail-footer-card:hover { color: var(--text-faint); } -/* First-run footer: the one-time telemetry opt-in + docs link. */ +/* First-run footer: the one-time telemetry opt-in. */ .composer-footer { width: 100%; max-width: 640px; From 3201bf21a78c70230f492183dbf7d3d68e28b86a Mon Sep 17 00:00:00 2001 From: Brett Wallace Date: Mon, 26 Oct 2026 16:44:45 -0700 Subject: [PATCH 6/6] chore: drop the stale palette docs-title terminology exception The help palette no longer lists the workflows quick start, so the allowlist entry for its title and URL matched nothing and failed `pnpm terminology:check`. Co-Authored-By: Claude Opus 5.5 --- scripts/agent-studio-terminology-allowlist.json | 7 ------- 1 file changed, 7 deletions(-) diff --git a/scripts/agent-studio-terminology-allowlist.json b/scripts/agent-studio-terminology-allowlist.json index e7477038d..6d1f52adf 100644 --- a/scripts/agent-studio-terminology-allowlist.json +++ b/scripts/agent-studio-terminology-allowlist.json @@ -230,13 +230,6 @@ "occurrences": 1, "reason": "The icon-name identifier remains stable; the palette's discriminator and item prefix now say agent." }, - { - "id": "palette-docs-page-titles", - "path": "packages/harness/web/src/lib/docs.ts", - "pattern": "Workflows quick start|/workflows/", - "occurrences": 2, - "reason": "Docs-site page title and its URL, quoted verbatim \u2014 the platform SDK concept keeps its own name." - }, { "id": "palette-model-icon-identifier", "path": "packages/harness/web/src/lib/palette.ts",