diegosouzapw
dff8524d3d
refactor(agent-skills): rewrite dashboard page as server wrapper + client
2026-05-27 22:10:01 -03:00
diegosouzapw
44b248314b
merge(F8): move skills→omni-skills + split into 8 components + inspector
2026-05-27 21:26:38 -03:00
diegosouzapw
f730161c74
merge(F2): catalog source 42 entries + parsers OpenAPI/CLI
2026-05-27 21:26:37 -03:00
diegosouzapw
b1a127a732
test(omni-skills): unit tests for OmniSkillsPageClient and components
...
46 structural/source-pattern tests covering: file structure, page.tsx server
component contract, PageClient 4-tab wiring, OmniSkillCard accessibility,
SkillInspectorPane 4 sub-tabs + API fetches, OmniSkillsList split layout,
OmniExecutionsTab columns, OmniSandboxTab config values,
OmniMarketplaceTab dual-provider logic, and E2E path update.
2026-05-27 21:24:15 -03:00
diegosouzapw
33c9b2b96c
test(omni-skills): update e2e path /dashboard/skills → /dashboard/omni-skills
2026-05-27 21:24:10 -03:00
diegosouzapw
99ccc35b93
refactor(omni-skills): split monolithic page into PageClient + 6 components
...
Extract the 870-line page.tsx into OmniSkillsPageClient (state + orchestration)
and 6 focused components: OmniSkillCard, OmniSkillsList, SkillInspectorPane,
OmniExecutionsTab, OmniSandboxTab, OmniMarketplaceTab.
- SkillsConceptCard variant="omni" rendered at top of page
- 4 tabs (skills/executions/sandbox/marketplace) preserved
- Skills tab uses 12-col split grid with SkillInspectorPane (4 sub-tabs)
- SkillInspectorPane: schema/handler/executions/sandbox sub-tabs, mode buttons,
uninstall, per-skill execution fetch
2026-05-27 21:24:06 -03:00
diegosouzapw
dfd2182c41
refactor(omni-skills): move dashboard/skills → dashboard/omni-skills
...
Rename the page route from /dashboard/skills to /dashboard/omni-skills
to align with the task-15 F8 redesign plan. The server component wrapper
is reduced to a 5-line delegator, removing the prior 870-line monolith.
2026-05-27 21:23:55 -03:00
diegosouzapw
15838348c3
test(agent-skills): unit tests for catalog + openapi + cli parsers
...
agentSkills-catalog.test.ts (30 tests):
- getCatalog(): 42 total, 22 api, 20 cli
- API_SKILL_IDS/CLI_SKILL_IDS length assertions
- ID regex format, uniqueness, required fields
- getSkillById happy path + null for unknown/empty
- filterCatalog by category, area, combined, empty
- refreshCatalog() invalidates cache (new array reference)
- computeCoverage() shape validation
- rawUrl/githubUrl URL format assertions
agentSkills-openapiParser.test.ts (9 tests):
- Fixture YAML: paths Map, area groupings (providers, api-keys, inference)
- OpenapiPath field validation
- Missing file throws
- Empty paths YAML returns empty Maps
- Real openapi.yaml: providers area ≥5 endpoints (integration)
agentSkills-cliRegistryParser.test.ts (10 tests):
- Fixture .mjs: commands Map, families Map, ≥5 provider subcommands
- Description extraction, isSubcommand flag, flags extraction
- Skips unrecognised files, throws on missing dir
- Real providers.mjs: ≥5 commands (integration)
2026-05-27 20:32:08 -03:00
diegosouzapw
0a95372746
feat(agent-skills): add openapiParser and cliRegistryParser
...
openapiParser.ts:
- parseOpenapi(): reads docs/reference/openapi.yaml via js-yaml (already a dep)
and returns { paths: Map<METHOD+path, OpenapiPath>, areas: Map<SkillArea, ops[]> }
- PATH_AREA_MAP maps 30+ path prefixes to SkillArea values
- getEndpointsForArea(area): convenience helper returning 'METHOD /path' strings
cliRegistryParser.ts:
- parseCliRegistry(): reads all bin/cli/commands/*.mjs via fs.readdirSync
and regex-parses .command(), .description(), .option() calls
- FILE_FAMILY_MAP maps 40+ file basenames to CLI SkillArea families
- getCommandsForFamily(family): convenience helper for catalog consumers
- Does NOT import Commander.js modules to avoid side-effects (D15)
2026-05-27 20:31:55 -03:00
diegosouzapw
a0cc22be73
feat(agent-skills): add catalog.ts with getCatalog/filter/coverage/fetch helpers
...
Implements the catalog.ts public API defined in §3.3 of the master plan:
- getCatalog(): AgentSkill[] — returns 42 entries, lazy-cached in module scope
- getSkillById(id): AgentSkill | null — lookup by canonical ID
- filterCatalog(opts): AgentSkill[] — filter by category and/or area
- computeCoverage(): SkillCoverage — reads skills/ dir and counts SKILL.md present
- refreshCatalog(): void — invalidates cache (used by tests + generator)
- fetchSkillMarkdown(id): Promise<SkillMarkdown> — reads local fs first,
falls back to GitHub raw fetch with 1h Next.js cache (for F4 /raw route)
API_SKILL_IDS and CLI_SKILL_IDS exported as readonly string arrays (D28 order).
Single source of truth for all consumers (REST routes, MCP, A2A).
2026-05-27 20:31:44 -03:00
diegosouzapw
78de1d2455
feat(agent-skills): expand catalog source to 42 entries (22 API + 20 CLI)
...
Replace 18-entry hardcoded AGENT_SKILLS array with 42-entry CURATED_SKILLS
covering all areas listed in D28 of the master plan. Each curated entry
has id, name, description, category, area, icon, and optional flags.
Adds backward-compatible AGENT_SKILLS alias (deprecated) that maps curated
entries to the old AgentSkill shape with empty endpoints/cliCommands arrays
so the existing /dashboard/agent-skills page continues to work until F7
rewrites it.
Imports AgentSkill, SkillArea, SkillCategory types from src/lib/agentSkills/types.ts
(F1 single source of truth) instead of redeclaring locally.
2026-05-27 20:31:31 -03:00
diegosouzapw
bf764dc529
test(agent-skills): unit tests for schemas + SkillsConceptCard
2026-05-27 19:23:36 -03:00
diegosouzapw
612cf63de7
feat(agent-skills): redirect /dashboard/skills -> /dashboard/omni-skills + sidebar reorder
2026-05-27 19:23:32 -03:00
diegosouzapw
aed1bd02d2
feat(agent-skills): add SkillsConceptCard shared component + i18n
2026-05-27 19:23:27 -03:00
diegosouzapw
051ce5e786
feat(agent-skills): add foundation types + Zod schemas
2026-05-27 19:23:20 -03:00
diegosouzapw
722e9f41cd
chore: apply unit test fixes, polyfills, and environment precedence fixes
2026-05-27 18:02:17 -03:00
JeferssonLemes
52a43d65d3
feat(modelSpecs): align opencode-go family with upstream provider limits ( #2802 )
...
Integrated into release/v3.8.6
2026-05-27 17:06:32 -03:00
Hernan Javier Ardila Sanchez
0e9aed4d03
fix(gemini): emit signaturelessToolCallMode:text for GEMINI format models ( #2801 )
...
Integrated into release/v3.8.6
2026-05-27 17:05:36 -03:00
Apostol Apostolov
87fad5d171
[codex] home: restore settings-driven home layout and quota auto-refresh ( #2800 )
...
Integrated into release/v3.8.6
2026-05-27 17:05:18 -03:00
Apostol Apostolov
f1e4c001a9
feat(logs): add clean history button ( #2799 )
...
Integrated into release/v3.8.6
2026-05-27 17:04:49 -03:00
akarray
83445a96b8
fix(oauth): repair Google loopback callback flow ( #2796 )
...
Integrated into release/v3.8.6
2026-05-27 17:04:31 -03:00
Markus Hartung
0c6c5e212e
fix: Error: Unable to inspect existing database #2771 ( #2795 )
...
Integrated into release/v3.8.6
2026-05-27 17:04:13 -03:00
Paijo
aac17c01c3
fix: register missing web-cookie validators (claude-web, gemini-web, copilot-web, t3-web) ( #2793 )
...
Integrated into release/v3.8.6
2026-05-27 17:03:55 -03:00
Paijo
619463c573
fix: resolve npm install warnings — remove dead deps, relax engine constraint ( #2792 )
...
Integrated into release/v3.8.6
2026-05-27 17:03:38 -03:00
JeferssonLemes
72a46581b6
fix(opencode-go): route qwen3.x via claude messages + repair fixMissingToolResponses for Claude-shape upstreams ( #2791 )
...
Integrated into release/v3.8.6
2026-05-27 17:02:38 -03:00
diegosouzapw
722aa32939
chore: ignore .claude/settings.local.json (per-user Claude Code permissions)
2026-05-27 16:29:27 -03:00
diegosouzapw
80f8dd7863
chore: merge release/v3.8.5 into main (post-v3.8.5 hotfixes + community PRs)
2026-05-27 16:23:02 -03:00
Diego Rodrigues de Sa e Souza
3c016ce4dc
Merge pull request #2790 from jeferssonlemes/feat/opencode-go-missing-models
...
feat(opencode-go): register 4 missing models from upstream catalog
2026-05-27 10:42:14 -03:00
diegosouzapw
7042460292
chore: merge release/v3.8.5 to resolve conflicts
2026-05-27 10:41:52 -03:00
Diego Rodrigues de Sa e Souza
10ecf693a9
Merge pull request #2789 from InkshadeWoods/main
...
fix(i18n): translate 162 missing zh-CN UI strings
2026-05-27 10:41:29 -03:00
diegosouzapw
d718a6cbfb
chore: merge release/v3.8.5 to resolve conflicts
2026-05-27 10:41:07 -03:00
Diego Rodrigues de Sa e Souza
f32f6b841c
Merge pull request #2782 from kjhq/docs/fix-readme-broken-links
...
docs: fix broken documentation links in README after Fumadocs migration
2026-05-27 10:31:54 -03:00
diegosouzapw
7117cea835
chore: merge release/v3.8.5 to resolve conflicts
2026-05-27 10:31:40 -03:00
Diego Rodrigues de Sa e Souza
c765a987e6
Merge pull request #2783 from JxnLexn/fix-codex
...
fix(codex): apply global service tiers to combo request bodies
2026-05-27 10:31:22 -03:00
diegosouzapw
a00af74279
chore: merge release/v3.8.5 to resolve conflicts
2026-05-27 10:31:09 -03:00
Diego Rodrigues de Sa e Souza
1d28fbc6f2
Merge pull request #2784 from hartmark/feature/docker-speedup
...
fix: speedup docker creation by reducing steps and bunch up copy operations
2026-05-27 10:30:47 -03:00
diegosouzapw
a7e1124f64
chore: merge release/v3.8.5 to resolve conflicts
2026-05-27 10:29:53 -03:00
Diego Rodrigues de Sa e Souza
4cefed33f7
Merge pull request #2785 from JxnLexn/fix-logging
...
fix: keep database log settings in sync with the pipeline toggle
2026-05-27 10:29:30 -03:00
diegosouzapw
02494051af
chore: merge release/v3.8.5 to resolve conflicts
2026-05-27 10:29:15 -03:00
Diego Rodrigues de Sa e Souza
1f1336aa7a
Merge pull request #2786 from JxnLexn/fix-combo-provider-exhaustion
...
Allow rate-limited provider connections after transient 429s
2026-05-27 10:28:55 -03:00
diegosouzapw
f40a20e5f8
chore: merge release/v3.8.5 to resolve conflicts
2026-05-27 10:28:40 -03:00
Diego Rodrigues de Sa e Souza
13de1c4675
Merge pull request #2787 from akarray/fix/remote-google-oauth-public-callback
...
fix: use public callbacks for remote Google OAuth with custom creds
2026-05-27 10:27:59 -03:00
Jefersson Lemes
e9ead52a42
feat(opencode-go): register 4 missing models from upstream catalog
...
Add qwen3.7-max, mimo-v2-pro, mimo-v2-omni, hy3-preview to the
opencode-go provider. Extend executor tests and model specs.
- Registry now matches live https://opencode.ai/zen/go/v1/models response
(16 models). Previously, four models returned by the upstream API were
absent from the static registry, so requests to them failed model
resolution before reaching the executor.
- qwen3.7-max: inherits defaultContextLength 200000; model spec mirrors
qwen3.6-plus (Bailian multimodal, thinking + tools + vision).
- mimo-v2-pro: spec mirrors mimo-v2-omni (262144 ctx, 131072 maxOut,
tools + vision).
- mimo-v2-omni: registry entry only (spec already present upstream).
- hy3-preview: registry entry only; falls back to __default__ spec.
- All four route to /chat/completions (default openai format), matching
the existing opencode-go executor behavior.
2026-05-27 10:20:25 -03:00
diegosouzapw
ade053c78b
chore: update CHANGELOG.md for v3.8.5 with integrated PRs
2026-05-27 09:49:46 -03:00
akarray
0700705040
fix: use public callbacks for remote Google OAuth with custom creds
2026-05-27 09:49:28 -03:00
Jan Leon
3a5ad60eb2
fix: allow rate-limited provider connections after transient 429s (with unit & integration tests)
2026-05-27 09:49:24 -03:00
Jan Leon
e6ea8f13d9
fix: keep database log settings in sync with the pipeline toggle
2026-05-27 09:48:38 -03:00
Markus Hartung
279e9c47bc
fix: speedup docker creation by reducing steps and bunch up copy operations
2026-05-27 09:48:35 -03:00
Jan Leon
af96e33184
fix(codex): apply global service tiers to combo request bodies
2026-05-27 09:48:17 -03:00
artac
9e57148b60
docs: fix broken documentation links in README after Fumadocs migration
2026-05-27 09:48:14 -03:00