Skip to content

feat(assistant): send the URL of Studio's agent docs to the agent - #164

Open
emmanuelmathot wants to merge 2 commits into
feat/assistant-tabfrom
feat/assistant-docs-url
Open

emmanuelmathot wants to merge 2 commits into
feat/assistant-tabfrom
feat/assistant-docs-url

Conversation

@emmanuelmathot

Copy link
Copy Markdown
Contributor

Stacked on #153.

What

The state document that Studio sends to the agent gets docs.manifestUrl: the absolute URL of .well-known/openeo-studio.json (from #151).

Why

The agent keeps its own copy of Studio's rules for code, and its backend is fixed. With this URL, the agent can read the rules and the backend from Studio. The agent change is in developmentseed/openeo-studio-assistant (feat/studio-docs).

Changes

  • app/types/agent.ts: new optional field docs. The contract version is 1.1. The schema is generated again.
  • app/utils/agent.ts: manifestUrl(), and the field in studioDocument().
  • ADR 0005: departure 4 says what Studio sends.

Test

pnpm build, pnpm lint and pnpm test pass. New tests in test/utils/agent.test.ts.

🤖 Generated with Claude Code

@claude

claude Bot commented Nov 2, 2026 •

Copy link
Copy Markdown

Claude finished @emmanuelmathot's task in 9s —— View job


✅ No blocking issues — safe to merge.

I checked the diff against origin/feat/assistant-tab:

  • manifestUrl() uses appConfig.pathPrefix, which is normalized. It has no trailing slash, and app/config/oidc.ts:88 builds URLs the same way. With or without a prefix, the URL is correct.
  • The contract version bump to 1.1, the optional docs field, the regenerated schema and the tests are consistent with each other.
  • I did not run the build or the tests.

Simplify (ponytail)

  • app/utils/agent.ts:190-194, app/components/editor/assistant-tab.tsx:187: manifestUrl is a pure function of two values, and ProjectSnapshot now carries a precomputed string just to pass it through. You could compute it inside studioDocument from openeoApiUrl-style inputs. That would remove the extra snapshot field. Advisory only: the current split keeps studioDocument free of window, which is reasonable.

💰 Estimated review cost: $0.09 · 0m09s · 5 turns

@github-actions

github-actions Bot commented Nov 2, 2026

Copy link
Copy Markdown

🐳 Docker image built for this PR:

docker pull ghcr.io/developmentseed/openeo-studio:pr-164

emmanuelmathot and others added 2 commits November 4, 2026 15:05
The state document gets docs.manifestUrl (contract 1.1): the absolute URL
of .well-known/openeo-studio.json. The agent can then read Studio's rules
and backend from Studio, and does not keep its own copy.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@emmanuelmathot
emmanuelmathot force-pushed the feat/assistant-docs-url branch from 2dc09f1 to c96a8b5 Compare November 4, 2026 14:07

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant