auth-md
Generate, validate, and explain `auth.md` files — the open protocol for AI agent registration.
Skill by https://ft.ia.br
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/fabricioctelles-auth-md
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: security, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/auth-md
What's inside
- Skill name
auth-md- Description
- Generate, validate, and explain `auth.md` files — the open protocol for AI agent registration. Use when making apps agent-ready, generating Protected Resource Metadata (RFC 9728), validating auth.md files, or implementing agent registration endpoints. Triggers on "auth.md", "agent registration", "agent auth", "make my app agent-ready", "ID-JAG", "identity_assertion", "service_auth", "protected resource metadata", "agentic registration".
- License
- Apache-2.0
- Metadata
- date: 2026-09-20 · author: https://ft.ia.br · license: Apache 2.0 · version: 2.1 · category: library-and-api-reference · repository: https://github.com/fabricioctelles/skills · upstream_commit: b53c9edfbfeea679b617727ebca9ba436bade794
- Instructions
- 335 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
Files (7)
- SKILL.md
- UPSTREAM_COMMIT
- example-auth-md.md · references/
- implementation-guide.md · references/
- metadata-schema.md · references/
- protocol-template.md · references/
- validation-rules.md · references/
SKILL.md (first lines)
# auth-md Generate, validate, and explain the **auth.md** protocol — the open standard that lets AI agents register for services on behalf of users, without signup forms. --- ## Protocol Context auth.md is a Markdown file published at a service's root (typically `https://service.com/auth.md`) that instructs agents on how to register. It works simultaneously as human-readable documentation and as a discoverable runtime artifact for agents. The protocol extends RFC 9728 (OAuth 2.0 Protected Resource Metadata) with an `agent_auth` block in the Authorization Server metadata. Registration returns an `identity_assertion` (service-signed JWT) that the agent exchanges at `/oauth2/token` for an `access_token`. Three registration methods are supported: | Flow | Mechanism | When to use | |------|-----------|-------------| | **identity_assertion** | Provider signs an ID-JAG (with `auth_time`) asserting user identity. Service verifies JWKS, returns `identity_assertion`. Agent exchanges at `/oauth2/token`. | Service does JIT provisioning from OIDC/SAML; wants zero-friction registration. | | **service_auth** | Email hint + browser-based ceremony. Agent receives `user_code` + `verification_uri`; user signs in and types code. Agent polls `/oauth2/token`. | Agents on platforms that can't mint ID-JAGs; self-serve without trust list. | | **anonymous** | No identity upfront. Immediate `identity_assertion` with pre-claim scopes. Optional deferred claim for scope upgrade. | Agent needs basic access immediately; human ownership binding deferred. | ### Protocol Endpoints | Endpoint | Purpose | |----------|---------| | `/.well-known/oauth-protected-resource` | Discovery — resource metadata (RFC 9728) | | `/.well-known/oauth-authorization-server` | Discovery — AS metadata with `agent_auth` block | | `POST /agent/identity` | Registration — dispatches on `type` field | | `POST /agent/identity/claim` | Claim initiation (anonymous deferred, or re-initiate expired user_code) | | `POST /oauth2/token` | Token exchange (JWT-bearer grant) + claim polling (claim grant) | | `POST /oauth2/revoke` | Credential-layer revocation (RFC 7009) | | `events_endpoint` | Registration-layer revocation (receives SETs, RFC 8935) | ### Token Lifecycle Registration **never** returns an `access_token` directly. The flow is: 1. Registration → `identity_assertion` (service-signed JWT, reusable until expiry) 2. Exchange → `POST /oauth2/token` with `grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer` → `access_token` 3. Refresh → re-exchange same `identity_assertion` when access_token expires 4. Expired assertion → restart at registration (Step 3) ### Claim Ceremony (v2 — Browser-Based) The claim ceremony uses RFC 8628-style device authorization: 1. Registration returns `user_code` + `verification_uri` in a `claim` block 2. Agent surfaces both to the user 3. User opens `verification_uri`, signs in to the service, types the 6-digit code 4. Agent polls `POST /oauth2/token` with `grant_type=urn:workos:agent-auth:grant-type:claim` + `claim_token` 5. On success: receives `access_token` + fresh `identity_assertion` --- ## Operation Modes | Parameter | Default | Description | |-----------|---------|-------------| | `mode` | `generate` | `generate` = create auth.md + metadata; `validate` = check existing auth.md; `explain` = explain the protocol | | `validation_level` | `basic` | `basic` = structure + fields + consistency (offline); `full` = basic + live endpoint fetch | | `flows` | `all` | Which flows to include: `identity_assertion`, `service_auth`, `anonymous`, `all` | | `role` | `app` | Perspective: `app` = service accepting registrations; `provider` = platform minting ID-JAGs | --- ## Workflow: Generate ### 1. Scan the codebase Look for: - Existing API routes and authentication patterns - Defined scopes/permissions - Framework (Express, Django, Rails, FastAPI, NestJS, etc.) - Base URL and auth server URL configuration - Existing authentication middleware - User models and provisioning mechanisms ### 2. Ask the user only what cannot be inferred - Which flows to support (identity_assertion, service_auth, anonymous, or combination) - Pre-claim scopes vs post-claim scopes (if anonymous) - Trusted agent providers and trust list policy (if identity_assertion) - Whether the service already does JIT provisioning or requires manual onboarding - `idJagMaxAuthAgeSeconds` value (default: 3600) - Desired rate limiting policy ### 3. Generate artifacts Produce three artifacts: **a) `auth.md`** — Markdown file following the protocol template (see `references/protocol-template.md`). Must contain: - Title and intro addressed to the agent - Step 1 — Discover (two hops: PRM → AS metadata) - Step 2 — Pick a method (decision tree) - Step 3 — Register (one subsection per supported method) - Step 4 — Claim ceremony (if service_auth or anonymous with claim) - Step 5 — Exchange the assertion (POST /oauth2/token with jwt-bearer grant) - Step 6 — Use the access_token - Errors (complete table with all applicable codes) - Revocation (two layers) **b) `oauth-protected-resource.json`** — JSON for `/.well-known/oauth-protected-resource` with `resource_name` and `resource_logo_uri` **c) `oauth-authorization-server.json`** — JSON for `/.well-known/oauth-authorization-server` with: - `issuer`, `token_endpoint`, `revocation_endpoint`, `grant_types_supported` - Complete `agent_auth` block with `identity_endpoint`, `claim_endpoint`, `events_endpoint` ### 4. Generate implementation guidance "Next Steps" section with: - How to serve `auth.md` at the domain root - How to serve metadata at the well-known paths - How to add `WWW-Authenticate` header to 401 responses - Endpoint implementation guidance (without generating framework-specific code unless requested) - Token exchange implementation at `/oauth2/token` - Claim page hosting (verification_uri → login → code input → confirm) - Recommended rate limiting configuration - Recommended audit events - Security considerations (token hashing, auth_time validation, replay protection, claim_token handling) ### 5. Generate Agent Provider guide (if role=provider) When the user is an agent provider (not an app), generate:
From fabricioctelles/skills, Apache-2.0.
More from fabricioctelles/skills
- 0.785score
humanizar
fabricioctelles
Write and edit Brazilian Portuguese prose with natural rhythm and the author's voice while preserving facts, meaning, and intent.
SkillAFreshness: A★ 119Claude Code +9 - 0.785score
motion-ad
danny.md — https://www.danny.md/skills/motion-ad
Produce a short motion-graphics video ad — a 15s Facebook/Instagram/TikTok spot — as a rendered MP4.
SkillAFreshness: A★ 119Claude Code +9 - 0.785score
human-ai
https://ft.ia.br
Edit English prose to remove repetitive AI phrasing, inflated language, and mechanical structure while preserving meaning and the author's voice.
SkillAFreshness: A★ 119Claude Code +9 - 0.785score
human-ai
fabricioctelles
Edit English prose to remove repetitive AI phrasing, inflated language, and mechanical structure while preserving facts, meaning, and the author's voice.
SkillAFreshness: A★ 119Claude Code +9 - 0.785score
loop-architect
https://ft.ia.br
Design well-structured agent loops with best-practice coaching and cross-model review gates before you run them.
SkillAFreshness: A★ 119Claude Code +9 - 0.785score
pstack-skill
Port of pstack by Lauren Tan (MIT) — cursor/plugins/pstack and ericlitman/open-pstack
Rigorous engineering orchestrator ported from Lauren Tan's pstack (poteto-mode): reads your task, picks one of 23 playbooks (bug fix, feature, refactoring…
SkillAFreshness: A★ 119Claude Code +9 - 0.774score
humanizar
https://ft.ia.br
Reescreve textos em português brasileiro para soarem mais humanos e naturais, reduzindo padrões típicos de escrita gerada por IA sem alterar fatos, argumento…
SkillAFreshness: A★ 119Claude Code +9 - 0.768score
agent-ready-cloudflare
Cloudflare / isitagentready.com
Audit and improve website readiness for AI agents using the Cloudflare "Is It Agent Ready?" scanner (isitagentready.com).
SkillAFreshness: A★ 119Claude Code +9 - 0.768score
coolify-operator
ft.ia.br
Master Coolify operator for self-hosted deployment platform.
SkillAFreshness: A★ 119Claude Code +9 - 0.739score
slop-eval
https://ft.ia.br
Objectively evaluate a UI/web design against the pols.dev anti-slop design law: detect catalogued slop tells with cited evidence, score 8 weighted axes…
SkillBFreshness: B★ 119Claude Code +9 - 0.739score
design-md-validator
https://ft.ia.br
Validate DESIGN.md files against the official Google specification using the `@google/design.md` CLI linter.
SkillBFreshness: B★ 119Claude Code +9 - 0.739score
agent-plugin-eval
fabricioctelles
Audit, score, and compare repositories containing portable Agent Plugins against the official Agent Plugins specification.
SkillBFreshness: B★ 119Claude Code +9
Signals
- Stars
- 119
- Forks
- 10
- Open issues
- 0
- Last commit (this folder)
- Sep 20, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 2.1
- License
- Apache-2.0
- Repository
- github.com/fabricioctelles/skills
- Website
- skilldev.pro
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from https://ft.ia.br
- 0.785score
human-ai
https://ft.ia.br
Edit English prose to remove repetitive AI phrasing, inflated language, and mechanical structure while preserving meaning and the author's voice.
SkillAFreshness: A★ 119Claude Code +9 - 0.785score
loop-architect
https://ft.ia.br
Design well-structured agent loops with best-practice coaching and cross-model review gates before you run them.
SkillAFreshness: A★ 119Claude Code +9 - 0.774score
humanizar
https://ft.ia.br
Reescreve textos em português brasileiro para soarem mais humanos e naturais, reduzindo padrões típicos de escrita gerada por IA sem alterar fatos, argumento…
SkillAFreshness: A★ 119Claude Code +9 - 0.739score
slop-eval
https://ft.ia.br
Objectively evaluate a UI/web design against the pols.dev anti-slop design law: detect catalogued slop tells with cited evidence, score 8 weighted axes…
SkillBFreshness: B★ 119Claude Code +9 - 0.739score
design-md-validator
https://ft.ia.br
Validate DESIGN.md files against the official Google specification using the `@google/design.md` CLI linter.
SkillBFreshness: B★ 119Claude Code +9
Cite this page
auth-md skill. Agent Mart. https://agentmart.dev/skills/fabricioctelles-auth-md (last updated 2026-10-24)