53 Commits
Author SHA1 Message Date
Paolo Anzani 6b25ab68b1 (docs) Refactor CLAUDE.md to point towards AGENTS.md 2026-07-27 21:38:26 +02:00
Paolo Anzani c1b585cef2 (docs) Add Git/PR workflow guidelines to AGENTS.md 2026-07-27 21:36:48 +02:00
Paolo Anzani e2cd339ef6 Add coding guidelines for AI agents in AGENTS.md and update .gitignore 2026-07-27 21:32:28 +02:00
paoloanzn db7d2165a7 RIK register 2026-06-10 16:51:20 +02:00
Paolo Anzani 7dc15d6c8f Merge pull request #17 from MrOplus/patch-1
Refactor directory creation logic in build script
2026-04-01 18:24:22 +02:00
DivByZero 5a5645d2b5 Refactor directory creation logic in build script
Fix build crash on windows devices due to `.` dir name
2026-04-01 19:56:55 +04:00
Paolo Anzani f66f3ab7b5 Merge pull request #11 from paoloanzn/fix/codex-provider-sticking
fix: remove duplicate isCodexSubscriber causing provider lock-in
2026-04-01 16:09:39 +02:00
Paolo Anzani 8d0aeb2315 Merge pull request #9 from paoloanzn/feat/cch-request-signing
feat: implement cch request signing (xxHash64 body integrity hash)
2026-04-01 15:57:39 +02:00
paoloanznandClaude Opus 4.6 b489664af2 fix: remove duplicate isCodexSubscriber causing provider lock-in
The Codex PR introduced a second isCodexSubscriber() definition that
silently overwrote the first. The replacement only checked for token
existence, ignoring the active provider — so once a user authenticated
with Codex, all requests were permanently routed to the Codex endpoint
regardless of model selection.

Merged both functions into one that requires the provider to be
explicitly set to 'openai' before returning true.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-01 15:55:18 +02:00
paoloanznandClaude 637d7a9cd8 feat: add xxhash-wasm dependency for cch signing
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-04-01 15:27:14 +02:00
paoloanznandClaude 7631c6288e feat: compute and inject cch hash in fetch wrapper
The buildFetch wrapper now intercepts requests to /v1/messages that
contain the cch=00000 placeholder, computes xxHash64 over the serialized
body, and replaces the placeholder with the 5-char hex digest before
sending. This replicates the request signing that was previously done
in Bun's native HTTP stack.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-04-01 15:27:09 +02:00
paoloanznandClaude ce8298b6db feat: always include cch=00000 placeholder in attribution header
Remove the NATIVE_CLIENT_ATTESTATION feature gate so the cch placeholder
is always present. The hash computation is now handled in JS-land via
the fetch wrapper rather than Bun's native HTTP stack.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-04-01 15:26:35 +02:00
paoloanznandClaude f97ed1c0ec feat: add cch hash computation module using xxHash64
Implements the cch request signing algorithm described in the
reverse-engineering article. Uses xxhash-wasm for xxHash64 computation
with the known seed constant.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-04-01 15:25:54 +02:00
Paolo Anzani 38c09970c2 docs: Update README to remove API key and fix commands
Removed sensitive information regarding the ANTHROPIC_API_KEY and updated installation instructions.
2026-04-01 12:17:17 +02:00
paoloanznandClaude Opus 4.6 99e2e93f05 docs: remove outdated model options from provider tables
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 12:13:46 +02:00
paoloanznandClaude Opus 4.6 8b96ee50ea docs: replace API key export with /login instruction
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 12:08:53 +02:00
paoloanznandClaude Opus 4.6 728692fe09 docs: professional overhaul of README with model providers section
Restructured the README to match top-tier open source project standards:
- Added badge row, centered header, and table of contents
- Added comprehensive Model Providers section covering all 5 supported
  providers (Anthropic, OpenAI Codex, AWS Bedrock, Vertex AI, Foundry)
  with auth methods, model tables, and env vars
- Reorganized experimental features into categorized tables
- Added environment variables reference
- Added contributing section
- Improved overall structure and readability

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 12:06:19 +02:00
Paolo Anzani 721fc8bcc6 Merge pull request #2 from bubblu2264326/main
Codex API Support: Feature Parity & UI Overhaul
2026-04-01 11:58:20 +02:00
paoloanznandClaude Opus 4.6 973aa9944d fix: set GPT-5.3 Codex as default model for Codex subscribers
The default model string was incorrectly set to gpt-5.2-codex while the
description already advertised GPT-5.3 Codex. Also removed a duplicate
dead-code isCodexSubscriber() block that was unreachable.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 11:57:23 +02:00
paoloanznandClaude 457de17f9c fix: improve OpenAI Codex authentication detection and UI updating
- Add openaiOauthTokens field to GlobalConfig for storing OAuth tokens
- Update isCodexSubscriber to check both env vars and OAuth token state
- Ensure UI components update automatically after OpenAI OAuth without restart
- Fix model menu and header to reflect Codex subscription status dynamically

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-04-01 11:53:17 +02:00
paoloanznandClaude c3e5419121 feat: add OpenAI Codex API support with new models
- Add OpenAI as new API provider with support for gpt-5.4, gpt-5.3-codex, gpt-5.4-mini models
- Extend model configuration system to include OpenAI provider
- Add isCodexSubscriber function for OpenAI authentication detection
- Update model options and descriptions for Codex models
- Create codex-fetch-adapter for OpenAI API integration
- Add OpenAI OAuth configuration and authentication URLs
- Update default model selection logic for Codex users

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-04-01 11:53:16 +02:00
paoloanznandClaude 0c3f07e67a feat: add JSDoc documentation to improve docstring coverage
- Add comprehensive docstrings to functions in codex-fetch-adapter.ts
- Add documentation for OAuth crypto functions
- Document profile fetching functions
- Improve overall code documentation quality to meet coverage requirements

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-04-01 10:35:22 +02:00
Muhammad Abdul Rehman 87a3807e0f Codex Support 2026-04-01 02:50:29 +05:00
Muhammad Abdul Rehman a80fc1043d feat: complete Codex API feature parity with UI updates 2026-04-01 02:46:56 +05:00
paoloanznandClaude Opus 4.6 e5b13b347c docs: move install one-liner to top of README
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 19:22:37 +02:00
paoloanznandClaude Opus 4.6 ecc2d68578 feat: add one-liner install script
curl | bash installer that checks OS, git, bun, clones, builds with
all experimental features, and symlinks as `free-code` on PATH.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 19:20:32 +02:00
paoloanznandClaude Opus 4.6 95a56f58ba chore: remove outdated app_structure_llm.txt
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 19:04:40 +02:00
paoloanznandClaude Opus 4.6 b163835213 docs: add IPFS mirror details to README
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 18:48:12 +02:00
paoloanznandClaude Opus 4.6 1710246afb fix: bypass GitHub app check for ultraplan/remote sessions
Bake CCR_FORCE_BUNDLE=true into the build defines so the bundle-seed
path is always active. This skips the GitHub remote + app installation
checks that fail on non-Anthropic repos.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 18:44:23 +02:00
paoloanznandClaude Opus 4.6 6dfb0bf0b8 docs: add screenshot to README
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 18:27:54 +02:00
paoloanznandClaude Opus 4.6 33f530dc70 docs: rewrite README for free-code
Replace the research-archive README with a proper project README
covering what free-code is, build instructions, feature flags,
and project structure.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 17:28:45 +02:00
paoloanznandClaude Opus 4.6 fcf5ab7dbb feat: add UltraplanLaunchDialog and UltraplanChoiceDialog components
These components were referenced in REPL.tsx but never defined, causing
a runtime crash when ultraplan tried to launch. Added:

- UltraplanLaunchDialog: pre-launch confirmation with terms/cancel
- UltraplanChoiceDialog: post-plan approval with execute-here/dismiss
- Conditional requires in REPL.tsx gated on feature('ULTRAPLAN')

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 17:23:08 +02:00
paoloanznandClaude Opus 4.6 61a23c19bf fix: make ultraplan command available in external builds
ultraplan was blocked by two gates that restricted it to ant-only builds:
1. It was in INTERNAL_ONLY_COMMANDS (only included when USER_TYPE=ant)
2. Its own isEnabled checked process.env.USER_TYPE === 'ant'

Move it to the main COMMANDS array and remove the ant-only isEnabled gate.
The feature('ULTRAPLAN') flag already controls whether the code is loaded.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 17:12:22 +02:00
paoloanzn 8e159b6ec3 feat: expand dev full experimental bundle 2026-03-31 16:50:42 +02:00
paoloanzn 6548db2da5 docs: refresh feature flag audit 2026-03-31 16:42:14 +02:00
paoloanzn 98e2b98a83 feat: enable voice mode in default builds 2026-03-31 16:30:46 +02:00
paoloanzn 26d7bcc4a8 fix: fall back when voice native module is missing 2026-03-31 16:21:35 +02:00
paoloanzn b7d73300c0 chore: clear cyber risk instruction 2026-03-31 16:14:44 +02:00
paoloanzn 7667a9c510 merge: integrate telemetry removal 2026-03-31 16:11:59 +02:00
paoloanzn bf222d092e Revert "feat: give mascot an evil grin"
This reverts commit 9b226e8599.
2026-03-31 16:08:40 +02:00
paoloanzn 7a558e9640 refactor: disable telemetry backends 2026-03-31 16:07:34 +02:00
paoloanzn 9b226e8599 feat: give mascot an evil grin 2026-03-31 15:58:44 +02:00
paoloanzn 4d728a1b19 fix: trim release notes to recent versions 2026-03-31 15:52:53 +02:00
paoloanzn 71bf5f24a0 feat: always compile full startup ui 2026-03-31 15:48:10 +02:00
paoloanzn aa0762b861 feat: rebrand startup ui 2026-03-31 15:36:53 +02:00
paoloanzn 2ed4acd4f7 docs: map feature flags and dev bundle 2026-03-31 15:23:41 +02:00
paoloanzn a8b18d910c feat: add experimental dev build 2026-03-31 15:11:58 +02:00
paoloanzn a7427a0e21 bump version 2026-03-31 15:04:15 +02:00
paoloanzn 10853d119b fix: guard missing modifiers addon in binary 2026-03-31 15:02:54 +02:00
paoloanzn 9bcc6fcf16 Revert "fix: normalize lf enter in tui input"
This reverts commit c1f9b3e7d3.
2026-03-31 14:55:49 +02:00