Repository navigation
Closed as not planned
Closed as not planned
Copy link
Labels
bugSomething is broken or behaving incorrectly.Something is broken or behaving incorrectly.needs-triageIssue needs maintainer review and initial categorization.Issue needs maintainer review and initial categorization.
Description
Before submitting
- I searched existing issues and did not find a duplicate.
- I included enough detail to reproduce or investigate the problem.
Area
apps/server
Steps to reproduce
- Install/update Codex CLI and verify it is current:
codex --version
- Create a repository-local Codex skill under a project:
<repo>/
.agents/
skills/
add-model-support/
SKILL.md
agents/
openai.yaml
- Use valid SKILL.md frontmatter:
---
name: add-model-support
description: Add support for a newly announced model from an existing provider.
---
- Verify Codex sees the repo-local skill when launched from the repo:
codex -C <repo-path> debug prompt-input "test" | rg "add-model-support"
- Open the same repository in T3 Code, type
$in the composer, and look foradd-model-support. - Fully quit T3 Code, delete the Codex provider cache, and reopen T3 Code:
Remove-Item "$env:USERPROFILE\.t3\caches\codex.json"
- Type
$again and observe that the skill is still missing. - Confirm the rebuilt T3 Code cache does not include the repo-local skill:
rg "add-model-support" "$env:USERPROFILE\.t3\caches\codex.json"
Expected behavior
When opening the repo in T3 Code, repo-local Codex skills under .agents/skills should appear in the $ skill picker, the same way they do in Codex.
In this case, $add-model-support should be available when working in the LoopGPT repository.
Actual behavior
The skill does not appear in T3 Code’s $ picker.
T3 Code appears to load global/plugin Codex skills from its Codex cache, but not the repo-local .agents/skills entry.
Impact
Minor bug or occasional failure
Version or commit
T3 Code Alpha: v0.0.27.0
Environment
Windows 11 Core, 64-bit, Windows desktop app (T3 Code Alpha), npm installed codex-cli 0.139.0
Logs or stack traces
Screenshots, recordings, or supporting files
No response
Workaround
Just prompt the agent to find and read the skill instead of manually invoking it. Not ideal for consistency in performance though.
Reacted by makl11, milesian01, ChrisKyle, Marcel, Jason Rai, Benjamin Gaier, Javier Ochoa, James, Kaf, Sandrino Escobar and 22 more
Metadata
Metadata
Assignees
Labels
bugSomething is broken or behaving incorrectly.Something is broken or behaving incorrectly.needs-triageIssue needs maintainer review and initial categorization.Issue needs maintainer review and initial categorization.
Activity
jakeleventhal commentedon Jul 20, 2026
@juliusmarminge #3982 my PR here solves this for both codex and Grok
fix: discover project-level Claude skills for the picker in the deskt…
Cedillin commentedon Jul 27, 2026
Confirming on macOS with the packaged nightly (
0.0.29-nightly.20260727.919,t3codeCommitHash f4c394323d45, codex-cli 0.145.0), and adding a repro that isolates the variable tocwdalone.Driving
codex app-serverdirectly, the only thing that changes between a hit and a miss is thecwdsargument:cwds.agents/skills/migration-workflow["/Users/david/projects/maat/workspace-app"]scope: "repo",path: <repo>/.agents/skills/migration-workflow/SKILL.md["/"]So Codex itself is fine; the skill file, frontmatter and
agents/openai.yamlare all fine. What T3 passes is the problem — fromapps/server/dist/bin.mjsin the shipped asar:and on the receiving side, a
cwdsentry that matches nothing falls back to flattening every entry, which quietly hides the miss:In the packaged macOS app that cwd is
/:which is why deleting
~/.t3/caches/codex.jsonand restarting doesn't help — the rebuild asks the same wrong question.Same root cause on the Claude driver (#4544):
discoverClaudeSkills(config, cwd, env)scans<cwd>/.claude/skillswith that sameServerConfig.cwd. So this isn't Codex-specific — every driver's project scope is dead in packaged builds. #3982 covers codex + grok and #4546 covers claude; worth landing them together.Workaround that survives app restarts, if anyone needs it before those merge — symlink the repo skill into the global root the probe does scan:
It then shows up as
scope: "user". Nightly updates don't clobber it, since it lives outside the app bundle.mrdowdeswell commentedon Aug 11, 2026
This happens too when running
npx t3@nightlyusing Claude Code as the harness, but only ifnpxis not run in the root folder of the project. If it is, the skills appear using the$picker. The snag is that if you change to a different project, those same skills follow you there and they aren't updated with the new project's local skills.Repo-A/.claude/skills/andRepo-B/.claude/skills/.Repo-Aand runnpx t3@nightly.$in the composer and Repo-A skills show up correctly.Repo-B.$in the composer and Repo-A's skills are still displayed, while Repo-B's local skills are apparently ignored.Tested on MacOS 15.7, 0.0.34-nightly.20260811.1068, Claude Code v2.1.227
BenWortley commentedon Aug 25, 2026
Confirmed on macOS with the packaged Nightly desktop app.
Environment
0.0.34-nightly.20260825.11845d7665396083d285132d67038813862a93337ca50.149.1Reproduction
<repo>/.agents/skills/<skill>/SKILL.md.$in the composer.Only global/plugin skills appear. Completely quitting T3 Code and performing a fresh reinstall does not change the result.
Additional evidence
<home>as its cwd rather than the active repository.<home>/.t3/caches/codex.jsoncontains 19 global/plugin skills and zero project-scoped skills.checkCodexProviderStatuspassesprocess.cwd()to the Codex probe. That value is subsequently sent toskills/listascwds: [input.cwd].<home>, while the official Codex app requests them relative to the active repository.This appears to be the same cwd-scoping problem described here, and it remains reproducible in the August 25 Nightly. Related: #6449 and the open fix in #7909.
t3dotgg commentedon Aug 27, 2026
Thanks for the detailed report. This looks like the same issue tracked in issue #6449.
Issue 6449 explicitly names the Codex skills/list cwd problem as well as Claude discovery. Issue 3040 supplies an A/B probe where changing only cwds finds or loses the same repository skill, and later comments reproduce the same startup-directory leakage across Claude projects. Current main still sends process.cwd to Codex discovery and ServerConfig.cwd to Claude discovery. This is one missing active-project scope, not two provider-specific missing-directory formats.
I'm closing this as a duplicate as part of an automated pass on all open issues. I linked this report from issue #6449 so its extra details remain available. This does not mean the underlying bug is fixed.