If a small UX regression can derail a dev’s day, it’s broken file links. That’s the report surfacing today around Codex desktop: local Markdown files that used to appear as clickable widgets now often show up as plain text paths—or worse, as links to duplicated “outputs” files. For teams who treat Markdown as a living spec, this breaks the source-of-truth model and adds friction where flow used to live.
What users are reporting (quick facts)
- Codex now frequently returns local
.mdpaths as plain text instead of a clickable file widget/link. - Previously, clicking the widget opened the actual file in the right sidebar for reading/editing and allowed “open containing folder.”
- In many cases, Codex links or creates a separate outputs copy instead. That duplicate isn’t authoritative, so edits and folder opens point to the wrong location.
- This behavior reportedly started today and is disrupting Markdown-heavy workflows.
- Agents suggest a new app-level file-linking rule is blocking the old behavior.
- Adding a rule to
AGENTS.mdappeared to help in some chats, but not consistently. - General chats sometimes return a working link; document and presentation chats refuse, citing a higher-priority instruction that restricts deliverables to the chat’s outputs folder.
- App-level instructions outrank
AGENTS.md, so local overrides do not stick. - The same app applies different file-delivery policies by chat type; affected modes only print paths or link outputs copies.
- Users are looking for an app-level setting or fix to restore direct links to authoritative local files.
Why this matters to developers
File linking is deceptively simple but foundational when working with AI assistants. The moment an agent stops linking the authoritative file and instead points to copies, you lose trust in the workflow: comments land in the wrong file, source control diffs get weird, and your team risks editing divergent states. For Markdown-centric projects—docs-as-code, RFCs, ADRs, or knowledge bases—this is more than an annoyance. It’s a governance problem.
Tools like Codex act as mediators between a model (often a GPT-class system) and your filesystem. When that mediation changes silently, it’s similar to an IDE suddenly “helpfully” saving your files to a temp directory. You can still recover, but you burn time and attention you didn’t plan to spend.
What likely changed under the hood
Based on reports, Codex appears to have introduced or tightened a policy that governs where deliverables may be linked from, and that policy varies by chat type:
- General chats sometimes still allow direct links to in-workspace files.
- Document and presentation chats reportedly restrict links to an
outputsdirectory, even if the canonical file is a standard.md,.docx, or.pptxwithin the workspace.
There are plausible reasons for this design: sandboxing for safety, clearer provenance of generated artifacts, or reproducibility (keeping deliverables in a controlled folder). Other AI dev tools follow similar patterns—IDE assistants that refuse to write outside the project root, or notebook systems that only save into a designated directory to keep lineage clean.
Key takeaway: Mode-specific safety and provenance rules can conflict with a developer’s need to operate on the real file, not a copy.
Diagnostics to try today
Before restructuring workflows, a few quick checks can help isolate where the change lives:
- Inspect app-level settings: Look for toggles like “Restrict links to outputs,” “Sandboxed outputs,” “Deliverables folder,” or “Trusted paths.” Some tools bury this under
Settings → FilesorSettings → Privacy/Security. - Compare chat modes: If general chat still links properly, document/presentation modes likely carry stricter defaults. Use general chat as a temporary workaround for file edits.
- Test
file://URIs: Ask the agent to renderfile:///C:/path/to/file.md(Windows) orfile:///Users/name/path/file.md(macOS/Linux) as a clickable link. Percent-encode spaces (e.g.,%20). - Check workspace boundaries: Ensure your authoritative files live within the recognized workspace root. Agents often refuse to link outside known roots.
- Audit tool calls: If Codex exposes a file/open tool, confirm the agent still has permission to invoke it on non-outputs paths.
Practical workarounds (until a fix lands)
These options aren’t perfect, but they can reduce disruption:
- Symlink from outputs to the real file: Keep a pointer in
outputs/that targets the authoritative file, so links remain clickable but edits hit the source. Examples:- Windows (Command Prompt, run as admin if needed):
mklink "outputs\\doc.md" "C:\\project\\docs\\doc.md" - macOS/Linux:
ln -s /project/docs/doc.md outputs/doc.md
Note: Symlinks can confuse some tools; validate your editor follows links to the target.
- Windows (Command Prompt, run as admin if needed):
- Direct OS open commands: If clickable widgets are gone, ask the agent to run platform commands that open the file in your default editor:
- Windows:
start "" "C:\\project\\docs\\doc.md"or open in File Explorer:explorer.exe /select, "C:\\project\\docs\\doc.md" - macOS:
open /project/docs/doc.mdor reveal in Finder:open -R /project/docs/doc.md - Linux:
xdg-open /project/docs/doc.md
- Windows:
- Enforce explicit link format: Ask the agent to render links using
<a href="file:///...">name.md</a>rather than relying on a special widget. - Policy-friendly dual output: In constrained modes, have the agent both: (1) place a copy in
outputs/for compliance and (2) print the absolute path plus a hash (e.g.,SHA-256) of the authoritative file, so humans can verify they’re in sync.
And if you use keyboard-centered navigation, bind an editor shortcut to jump to a path in the clipboard (e.g., paste a path and press Enter in a “Quick Open” dialog). Tools like VS Code map this to Ctrl+P or Cmd+P.
Comparisons: how other tools handle it
Other AI-enabled editors and agents have converged on safety and provenance in different ways:
- VS Code with Copilot Chat: Generally respects the project root; quick open can jump to real files without mirroring. Extensions may still impose safe-write policies.
- Cursor and Zed: Project-scoped agents often refuse to touch or link files outside the workspace. When policies are clear, users adapt faster.
- JetBrains AI Assistant: Warns on unsafe operations and tends to anchor edits and links to the project model.
- Obsidian with AI plugins
- Notion exporting to Markdown
Across the stack, the theme is consistent: prioritize reproducibility, then smooth the UX. The trick is balancing safety with “edit the thing I asked for.” At AI Tech Inspire, we’ve seen that when a tool’s mode switching is opaque, trust drops—even if the safety goal is valid.
Why this might be intentional
Mode-specific policies often reflect design choices to protect users and preserve lineage, especially when models can generate or modify files autonomously. If Codex tightened rules such that document and presentation modes must emit tracked deliverables into outputs/, that aligns with provenance and auditing. Many agent frameworks—whether powered by PyTorch, TensorFlow, or orchestration layers you’d find across Hugging Face—are moving toward stricter tool permissions for the same reason. Even accelerator stacks like CUDA ecosystems emphasize determinism and traceability in production-grade pipelines. File policies are the app-layer equivalent.
Actionable next steps (for maintainers and power users)
- Collect a minimal repro: “Start a new document chat → request edits to
docs/spec.mdinside workspace → result links an outputs copy or prints a path.” Include exact timestamps and versions. - Note your versions and modes: App version, OS, whether the workspace lives on a synced drive, and if any enterprise policy is active.
- Search release notes: Look for phrases like “file linking,” “outputs,” “sandbox,” or “deliverables.”
- Open a ticket: Attach the repro, describe expected vs. actual behavior, and request an app-level toggle: “Prefer authoritative file links when the target is inside the workspace.”
- Document expectations in
AGENTS.md: Even if app-level rules override in some modes, it helps teammates understand how to request paths, hashes, and source confirmation.
Ideal outcome: A setting that restores consistent, clickable links to authoritative files inside the workspace, while still allowing outputs for generated artifacts.
The bottom line
From what users describe, Codex desktop didn’t just break Markdown links randomly—it likely enforced a stricter, mode-specific file policy that trades convenience for provenance. That’s a valid design choice, but the lack of a clear escape hatch is what stings. Until there’s a visible toggle, the best bet is a combination of general chat for direct edits, file:// links for clickability, and symlinks to bridge the outputs directory with your source of truth.
If your team’s process depends on authoritative file editing from within the agent, raise this via official channels with a crisp repro. Meanwhile, the workarounds above can keep velocity up. And if you’re choosing among AI dev tools, treat file-linking behavior as a first-class criterion—just as you would model quality or latency. Small paper cuts there become real costs quickly.
AI Tech Inspire will keep an eye on this. If Codex surfaces a setting to re-enable direct linking for in-workspace files, we’ll update with steps and caveats. Until then, test your modes, codify expectations in AGENTS.md, and make any safety rails explicit so the team knows when they’re working on the real thing.
Recommended Resources
As an Amazon Associate, I earn from qualifying purchases.