Skip to content

feat: add Claude OAuth authorization flow - #1

Draft
bytemain wants to merge 12 commits into
mainfrom
ferris/claude-oauth
Draft

feat: add Claude OAuth authorization flow#1
bytemain wants to merge 12 commits into
mainfrom
ferris/claude-oauth

Conversation

@bytemain

Copy link
Copy Markdown
Member

Summary

Adds a first-stage native Claude Code OAuth authorization-code flow to the botiverse fork.

  • PKCE S256 + random state
  • Claude authorize/token endpoints
  • strict localhost callback origin/path validation
  • provider error/state/expiry validation
  • native-only token persistence; public result contains no token fields
  • focused tests for authorization request and callback rejection paths
  • draft design/compatibility notes in docs/CLAUDE-OAUTH.md

Scope / follow-ups

This is intentionally a reviewable Phase 1. It does not yet add account listing, refresh/logout, profile/roles enrichment, a callback listener, or N-API bindings. Those should follow after protocol/storage review. No vendor, release, or npm changes are included.

Validation

  • cargo fmt --all -- --check
  • cargo check
  • cargo test claude_oauth::tests --lib (3 passed)

Commit: 5a05f56e1b5d3e9d5c1f6c0f2e6bc0e3c75e6d6a
PR is draft for @artin review; do not merge yet.

John and others added 5 commits August 21, 2026 14:38
Signed-off-by: John <john@mail.build>
Signed-off-by: John <john@mail.build>
Signed-off-by: John <john@mail.build>
@bytemain
bytemain force-pushed the ferris/claude-oauth branch from 5a05f56 to 44e23bf Compare August 21, 2026 09:05
Signed-off-by: Ferris <ferris@mail.build>
@bytemain
bytemain force-pushed the ferris/claude-oauth branch from 44e23bf to d9476ff Compare August 21, 2026 09:06
Signed-off-by: artin <artin@cat.ms>
Signed-off-by: artin <artin@cat.ms>
Signed-off-by: artin <artin@cat.ms>
Signed-off-by: artin <artin@cat.ms>
Signed-off-by: artin <artin@cat.ms>
Signed-off-by: artin <artin@cat.ms>
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.

2 participants