Skip to content

Harden auth flow: prefer qovery api, never let the agent handle tokens - #10

Open
jpetitcolas wants to merge 2 commits into
Qovery:mainfrom
jpetitcolas:fix/auth-prefer-qovery-api-v2
Open

Harden auth flow: prefer qovery api, never let the agent handle tokens#10
jpetitcolas wants to merge 2 commits into
Qovery:mainfrom
jpetitcolas:fix/auth-prefer-qovery-api-v2

Conversation

@jpetitcolas

Copy link
Copy Markdown

Outcomes

Removes every code path where the agent could see, capture, or generate a Qovery token. Skills now authenticate through the qovery CLI, which keeps secrets out of the agent's command stream.

User impact:

  • AI agents running these skills no longer need an API token to be created or printed in the conversation.
  • Restricted-role users (read-only / viewer / member) can use the skills after qovery auth without any token-creation step.
  • When a token is genuinely required, the user runs the command and exports it — the agent is not in the loop.

Technical Changes

  • Adds Tier 1 qovery api as the preferred auth path (CLI handles auth internally — no token in the agent's stream).
  • Drops the qovery auth token --print flow that piped the CLI bearer token into curl.
  • Drops the agent-run qovery token create suggestion (its stdout exposes the token).
  • "Not authenticated" path now instructs the user to run qovery auth (browser login) or qovery token create themselves.
  • Replaces inline auth steps in 6 phase1 files with a brief qovery api reminder; full flow stays in _shared/auth.md, synced to all 8 skills.

Restructures _shared/auth.md to a 2-tier flow:
1. qovery api      — CLI handles auth internally, no token in agent stream
2. $QOVERY_API_TOKEN — fallback when CLI is unavailable

Removes the previous token-printing path (qovery auth token --print piped into
curl) and the qovery-token-create-by-agent suggestion. When neither tier works,
the doc instructs the USER to run `qovery auth` (browser login) or
`qovery token create` themselves and export the result — the agent never sees
the secret.

Synced to all 8 skills via scripts/sync-shared.sh.
…reminder

Each phase1 'Authenticate' subsection now points at qovery api as the
preferred path and references the auth doc (already loaded via the skill
nav) for fallback and not-authenticated cases. Avoids per-skill drift and
the chained-reference indirection.
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