Commit Graph

2696 Commits

Author SHA1 Message Date
diegosouzapw
918a539baf docs(release): v3.8.0 documentation overhaul (FIX 1-9)
Root docs
- GEMINI.md: remove plaintext credential (Hard Rule 1) and refresh references
- CLAUDE.md: update coverage gate to 75/75/75/70, add module counts for v3.8.0
- SECURITY.md: add Supported Versions section
- AGENTS.md: refresh counts (177 providers, 37 MCP tools, 14 strategies, 5 A2A skills, 3 cloud agents) and module map
- CONTRIBUTING.md: align coverage gate, Node range, conventional-commit scopes
- CODE_OF_CONDUCT.md: refresh contact
- llm.txt: refresh Node range, provider/tool/strategy counts, add v3.8.0 highlights and documentation index
- Tuto_Qdrant.MD -> Tuto_Qdrant.md (rename + dormant-integration status banner)

i18n strict mirrors
- docs/i18n/<40 locales>/llm.txt: refresh body to match root (preserving locale header + flags line + --- separator)

Cross-references
- docs/MEMORY.md, docs/REPOSITORY_MAP.md: update Tuto_Qdrant.md path and note dormant status
- Cleanup: remove .issues/feat-batch-delete-provider-accounts.md and docs/archive/RFC-AUTO-ASSESSMENT-DRAFT.md (already absent)

Agent workflows / skills / commands
- .claude/commands/*-cc.md, .agents/workflows/*-ag.md, .agents/skills/*/SKILL.md:
  - Replace ghost tools: search_web -> WebSearch, read_url_content -> WebFetch,
    view_file -> Read, write_to_file -> Write
  - notify_user -> mandatory stop checkpoints
  - version-bump / generate-release: 2.x.y -> 3.x.y, expand docs table to 28 entries,
    mark /update-docs and /update-i18n as deprecated
  - capture-release-evidences / review-discussions: tool-mapping notes for
    browser_subagent (mcp__claude-in-chrome__* and gh CLI)
  - review-prs: align coverage thresholds (>=75/>=70, ~82% measured)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 08:23:02 -03:00
diegosouzapw
26d6b7a76f docs(docs): add REPOSITORY_MAP + trim README for sales
REPOSITORY_MAP.md (new, ~26 KB) documents every directory and root file
with one-line descriptions so newcomers can navigate the tree without
opening files. Covers src/, open-sse/, electron/, bin/, scripts/, docs/,
tests/, .github/, .husky/, .claude/, .agents/, and the underscore-prefixed
out-of-tree directories.

README.md (was ~100 KB / 1876 lines) is rewritten as a sales-focused
landing of ~22 KB / 482 lines:
- Updated SEO/JSON-LD/FAQ to v3.8.0 (was 3.7.8) with correct counts
  (177 providers, 14 strategies, 37 MCP tools, 14 OAuth, 9-factor Auto-Combo).
- Trimmed long FAQ/Troubleshooting/Compression Math/Docker prose
  in favor of links to the dedicated docs.
- Added "What's new in v3.8.0" section + competitive comparison table.
- Added a categorized Documentation index covering all 44 docs in docs/.
- Kept screenshots, quick start, providers summary, compatibility tables,
  multi-platform install table, use-cases at a glance, i18n strip,
  community + security blocks.

The CHANGELOG, deep technical guides, and per-area references stay where
they belong — under docs/. The README is now a marketing page that
points to them.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 04:04:22 -03:00
diegosouzapw
4437b0040e docs(docs): add drift detection scripts + minor refinements
Adds three automated drift-detection scripts under scripts/, plus npm
helpers to run them, and applies small follow-ups to TERMUX, I18N, and
CODEBASE docs flagged by the docs audit.

New scripts (scripts/):
- check-env-doc-sync.mjs — cross-checks process.env.X in code vs
  .env.example vs docs/ENVIRONMENT.md. Soft-fails by default; --strict
  exits 1 on drift.
- check-docs-counts-sync.mjs — validates counts (executors, routing
  strategies, OAuth providers, A2A skills, cloud agents) match between
  code and docs.
- check-deprecated-versions.mjs — flags hardcoded stale versions and
  "Last updated" dates older than 60 days. Uses hardcoded regexes to
  satisfy semgrep ReDoS guidance.

package.json:
- New scripts: check:env-doc-sync, check:docs-counts,
  check:deprecated-versions, check:docs-all (umbrella).

Doc refinements:
- TERMUX_GUIDE: spell out the Node version range required by package.json.
- I18N: note that docs/i18n/in/ tree is an orphan duplicate of hi/ that
  the generator no longer writes to; replace hard-coded
  UNTRANSLATABLE_KEYS count with "varies per release".
- CODEBASE_DOCUMENTATION: minor wording.

Pre-commit hook is unchanged — the new checks are heuristic and ship as
on-demand npm scripts to avoid false-positive blocks.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 03:47:41 -03:00
diegosouzapw
20cb648ea9 docs(docs): expand v3.8.0 guides and add provider reference generator
Refresh the documentation set for v3.8.0 with new guides covering
authz, agent protocols, cloud agents, compliance, electron, evals,
guardrails, memory, skills, stealth, tunnels, webhooks, and more.

Add an auto-generated provider reference plus a
`gen:provider-reference` script to keep provider catalog docs aligned
with `src/shared/constants/providers.ts`.
2026-05-13 03:47:41 -03:00
diegosouzapw
204e15628c chore(release): prepare v3.8.0 docs and coverage ratchet
Refresh the v3.8.0 documentation set across API, setup, Docker,
environment, Fly.io, VM deployment, and troubleshooting guides.

Document the updated budget payload, management-auth requirements,
WebSocket bridge secret, Compose profiles, production deployment
details, and expanded Node support. Also update the OpenAPI catalog,
raise coverage thresholds to match the current baseline, and align
cloud-agent task route typing and schemas with the stricter runtime
behavior.
2026-05-13 03:47:40 -03:00
diegosouzapw
46e5aa5522 refactor(api): consolidate auth routing and provider config handling
Centralize optional API key capability checks so dashboard forms and
provider schemas share the same rules, including keyless Pollinations
support and cloud-agent batch testing mode.

Also align auto-combo config on `routerStrategy`, keep legacy combo
reads compatible, preserve MCP routes as management APIs, narrow
`require-login` public access to readonly/bootstrap flows, and make
cloud-agent CORS reflect the request origin for credentialed requests.
2026-05-13 03:47:40 -03:00
diegosouzapw
c89663d774 fix(auth): require management auth for agent and cooldown APIs
Protect cloud agent task routes and model cooldown management endpoints
with management-session auth and consistent CORS handling.

Also align cloud agent API serialization with the dashboard, reuse the
provider connection schema for CLI key storage, and accept active OAuth
tokens when building virtual auto-combo candidates.
2026-05-13 03:47:40 -03:00
Diego Rodrigues de Sa e Souza
20b35c4d20 security: sanitize error messages in API routes (CodeQL js/stack-trace-exposure)
Integrated into release/v3.8.0
2026-05-12 23:23:07 -03:00
dependabot[bot]
6fa2d5e84f deps: bump electron from 41.5.1 to 42.0.1 in /electron
Integrated into release/v3.8.0
2026-05-12 23:22:14 -03:00
dependabot[bot]
dbe9d84649 deps: bump Docker node from 24.15.0 to 26.1.0-trixie-slim
Integrated into release/v3.8.0
2026-05-12 23:21:28 -03:00
dependabot[bot]
9e49baefa4 deps: bump production group (http-proxy-middleware 3→4, next-intl 4.11.2)
Integrated into release/v3.8.0
2026-05-12 23:20:45 -03:00
dependabot[bot]
75b979282f deps: bump the development group with 6 updates (#2184)
Merged into release/v3.8.0. Dev dependency updates: Playwright 1.60, lint-staged 17 (major — Node 22+ compatible), typescript-eslint, vitest, wait-on.
2026-05-12 22:42:53 -03:00
dependabot[bot]
e354d942e3 deps: bump electron-builder from 26.9.1 to 26.10.0 in /electron (#2183)
Merged into release/v3.8.0. Minor electron-builder bump (26.9→26.10) with pnpm 11 support and AppImage fixes.
2026-05-12 22:41:00 -03:00
Ramel Tecnologia - Rafa Martins
c53587ef2d Add Brazilian WhatsApp group link to README (#2201)
Merged into release/v3.8.0 — aligned workflow files and lockfile with release branch, fixed trailing space in WhatsApp URL. Thanks @rafacpti23!
2026-05-12 22:35:20 -03:00
diegosouzapw
d94b6b5012 chore(agents): rename capture release evidences skill identifier 2026-05-12 22:13:15 -03:00
diegosouzapw
15d6fc35da fix(ci): run coverage gate serially 2026-05-12 21:44:06 -03:00
diegosouzapw
da982d31be fix(ci): align resilience and thinking checks 2026-05-12 20:44:23 -03:00
diegosouzapw
a260795327 fix(ci): align cloud code thinking and model catalog tests 2026-05-12 20:28:02 -03:00
diegosouzapw
4f20fbc36c fix(api): validate model cooldown delete payload 2026-05-12 20:11:45 -03:00
diegosouzapw
4ac6e58360 chore(deps): refresh mermaid lockfile for audit 2026-05-12 20:05:06 -03:00
Dohyun Jung
fc620514a9 feat(providers): add Command Code provider (#2199)
Integrated into release/v3.8.0 after syncing the contributor branch, removing unrelated workflow/package-lock changes, and validating Command Code provider, auth, validation, and Responses coverage locally.
2026-05-12 19:57:35 -03:00
InkshadeWoods
e6aee3d26c feat: add ModelScope provider-specific 429 handling and retry logic (#2202)
Integrated into release/v3.8.0 after syncing the contributor branch, removing unrelated workflow/docker/package-lock changes, tightening ModelScope 429 classification, and validating policy coverage locally.
2026-05-12 19:57:26 -03:00
nickwizard
061c0c29fe Feat/provider models (#2196)
Integrated into release/v3.8.0 after syncing the contributor branch, removing unrelated workflow/docker/package-lock changes, and validating provider-scoped models coverage locally.
2026-05-12 19:57:15 -03:00
backryun
af7d056f7e chore(providers): improve BazaarLink and Completions.me support (#2177)
Integrated into release/v3.8.0 after syncing the contributor branch, removing unrelated dependency churn, and validating executor/default URL coverage locally.
2026-05-12 19:57:06 -03:00
Anton
a408b30896 fix(cliproxyapi): probe /v1/models for health (CPA 6.x has no /health) (#2189)
Integrated into release/v3.8.0 after syncing the contributor branch and validating tests/unit/cliproxyapi-executor.test.ts locally.
2026-05-12 19:50:07 -03:00
Anton
13f7ebce5a fix(stream): skip [DONE] terminator for Claude SSE clients (#2190)
Integrated into release/v3.8.0 after syncing the contributor branch and validating tests/unit/stream-utils.test.ts locally.
2026-05-12 19:49:59 -03:00
Anton
5c11b57542 fix(claudeHelper): emit data field on redacted_thinking, drop bogus signature (#2191)
Integrated into release/v3.8.0 after syncing the contributor branch and validating tests/unit/translator-claude-helper-thinking.test.ts locally.
2026-05-12 19:49:50 -03:00
Anton
340f68bbee fix(modelSpecs): cap thinking budget for Claude Opus 4.6 / 4.7 / Sonnet 4.6 (#2197)
Integrated into release/v3.8.0 after syncing the contributor branch and validating tests/unit/thinking-budget.test.ts locally.
2026-05-12 19:44:45 -03:00
Anton
b23b624f82 fix(reasoning-cache): include xiaomi-mimo in replay provider/model detection (#2198)
Integrated into release/v3.8.0 after syncing the contributor branch and validating tests/unit/reasoning-cache.test.ts locally.
2026-05-12 19:43:58 -03:00
Anton
607ae5ca5e fix(cliproxyapi): detect Anthropic shape on minimal Capy bodies (#2192)
Integrated into release/v3.8.0 after syncing the contributor branch and validating tests/unit/cliproxyapi-executor.test.ts locally.
2026-05-12 19:43:04 -03:00
diegosouzapw
007e19fe30 refactor(workflows): align agent and claude workflow naming
Rename skill identifiers to their Codex-specific variants and move
workflow command files to the new `-ag` and `-cc` naming scheme.

Mirror the workflow guides under both `.agents/workflows` and
`.claude/commands` so the same operational playbooks are available
through each command surface.
2026-05-12 17:38:53 -03:00
diegosouzapw
5455bf9b77 docs(agents): clarify Codex execution guards in skill guides
Document explicit Codex handling for `// turbo` and `// turbo-all`
across deployment, release, issue, PR, discussion, and versioning
skills.

Add hard-stop approval guidance so report phases end before any
implementation, merge, publish, or deployment actions continue, and
spell out parallelism limits for independent versus dependent steps.
2026-05-12 17:07:02 -03:00
diegosouzapw
a6d4c012ae feat(agents): add release, deployment, and triage workflows
Add new agent skills and Claude command definitions for release
generation, VPS deployment, issue triage, PR review, discussion
review, feature implementation, and version bump workflows.

These additions document and standardize internal maintenance
operations across the release branch process and operational tooling.
2026-05-12 16:31:08 -03:00
diegosouzapw
4f87062f3e fix(tests): update test snapshots and registry for PRs merged into v3.8.0
- providerModels: supportsXHighEffort returns true for unknown providers
  (passthrough) so PR #2162 sanitizeReasoningEffortForProvider no longer
  downgrades xhigh for non-registry custom providers
- providerRegistry(openai): add gpt-4o + gpt-4o-2024-11-20 with explicit
  contextLength so catalog tests can resolve them without synced DB data
- context-manager.test: update GPT-5.5 Codex expected context 1050000→400000
  (PR #2163 capped codex OAuth context at 400K)
- provider-models-config.test: update kiro claude-opus-4.7 contextLength
  undefined→1000000 (PR #2163 added explicit context window)
- oauth-providers-config.test: add windsurf and devin-cli to expected
  provider keys and config map (PR #2168)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 15:05:00 -03:00
diegosouzapw
be76707452 fix(cliRuntime): resolve TDZ for isWindows in devin config via lazy getter, add spawn metachar guard
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-11 22:22:26 -03:00
diegosouzapw
08b95863a2 chore(release): update CHANGELOG.md with v3.8.0 unreleased entries for PRs #2146, #2161-2168, #2176
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-11 21:59:24 -03:00
Andrew Munsell
ed1554b7a1 feat(search): add Ollama Search as a web search provider (#2176)
Integrated into release/v3.8.0 — adds Ollama Search as a web search provider.
2026-05-11 21:54:34 -03:00
Aleksandr
ff730b372e feat(oauth): complete Windsurf / Devin CLI OAuth + API-token flows (#2168)
Integrated into release/v3.8.0 — complete Windsurf/Devin CLI OAuth + API-token executor flows with unit tests.
2026-05-11 21:49:32 -03:00
Ramel Tecnologia
95944dad92 feat(resilience): expose model cooldown list with manual re-enable (#2146)
Integrated into release/v3.8.0 — adds model cooldowns dashboard card with real-time list and re-enable action. Domain module and unit tests added.
2026-05-11 21:38:26 -03:00
Anton
704f686396 fix(cliproxyapi): Anthropic-shape body routing and gate compatibility (#2165)
Integrated into release/v3.8.0 — three fixes for CliProxyApi: Anthropic-shape body routing to /v1/messages, Capy premium extras strip, and mcp_* tool name rewrite to avoid Anthropic gate. Tests added covering all three categories.
2026-05-11 21:23:59 -03:00
Dohyun Jung
dcb32a6ba0 feat(api): aggregate combo model metadata in catalog (#2166)
Integrated into release/v3.8.0 — adds target-based metadata aggregation for combo entries in /v1/models using least-common-denominator approach (context_length, max_output_tokens, capabilities, modalities).
2026-05-11 21:14:25 -03:00
Anton
b3fe7ddcb1 chore(registry): refresh per-model contextLength/maxOutputTokens for active providers (#2163)
Integrated into release/v3.8.0 — refreshes per-model contextLength/maxOutputTokens for claude, kiro, github, kimi-coding, xiaomi-mimo, and codex/gpt-5.5 (OAuth cap 400K). Fixes provider-ID mismatch causing context_length fallthrough to defaults.
2026-05-11 21:04:01 -03:00
Anton
e5974c4ae3 feat(responses): degrade background mode to synchronous execution (#2164)
Integrated into release/v3.8.0 — degrades background:true to synchronous execution instead of 400, enabling Capy and similar clients that set background:true by default to work seamlessly.
2026-05-11 21:03:26 -03:00
Anton
25199b20fe fix(executors): sanitize reasoning_effort for non-supporting providers (#2162)
Integrated into release/v3.8.0 — adds sanitizeReasoningEffortForProvider hook to BaseExecutor, fixing xhigh→high downgrade for non-supporting providers and full strip for mistral/devstral and GitHub Claude models.
2026-05-11 21:02:28 -03:00
Anton
d995713e21 fix(translator): inject thinking placeholder for all Claude-shape upstreams (#2161)
Integrated into release/v3.8.0 — removes redundant provider guard in prepareClaudeRequest, fixing thinking placeholder injection for all Claude-shape upstreams (kimi-coding, glmt, zai).
2026-05-11 21:01:23 -03:00
Andrew Munsell
6d722ecd27 fix(providers): allow optional-key providers to pass connection test (#2169)
Integrated into release/v3.8.0 — allows optional-key providers (SearXNG, Petals, self-hosted chat, OpenAI/Anthropic-compatible) to pass connection test by centralizing the check in providerAllowsOptionalApiKey().
2026-05-11 20:57:01 -03:00
Hernan Javier Ardila Sanchez
c52b365e1d refactor(catalog): remove .ts imports, as any casts, normalize alias resolution (#2152)
Integrated into release/v3.8.0 — removes .ts import extensions, replaces as any casts with proper types, and normalizes provider alias resolution in combo context_length calculation.
2026-05-11 20:55:20 -03:00
diegosouzapw
0594b1d2ea fix(providers): correct pollinations requests and provider dashboard state
Update Pollinations request transformation to send the selected model
and stream flag so requests match the active endpoint behavior.

Align the ChatGPT TLS client with shared proxy resolution so dashboard
proxy context is honored before falling back to environment settings.
Also refresh provider display names across dashboard pages, correct the
Claude extra-usage toggle messaging and visual state, and mark
Pollinations as offering a free public endpoint.
2026-05-11 15:51:05 -03:00
diegosouzapw
fea8e5a1e9 docs(workflow): strictly restrict cherry-pick to locked PRs only
Mandate direct PR fixes over cherry-picking in all cases where the maintainer has write access to the contributor's branch. Explicitly forbid using cherry-pick just to bypass conflict resolution.
2026-05-11 10:30:51 -03:00
diegosouzapw
f632da7943 docs: add contributor credits to CHANGELOG for all merged/cherry-picked PRs
Also update review-prs workflow to mandate CHANGELOG credits when cherry-picking
is used, preventing credit erasure from release notes.
2026-05-11 10:28:29 -03:00