Repository navigation
feat(phase62): markdown editor for project instruction files (Plan 062) - #91
Merged
Merged
Conversation
Quick edits to CLAUDE.md, AGENTS.md, .claude/CLAUDE.md, the board, root *.md and docs/*.md from the dashboard project view, behind a new Overview | Markdown toggle. The header is regrouped: session actions top-right, housekeeping on the path row. Names must be in a fresh md_list result and then pass resolve_inside, so callers can't pick arbitrary paths. Saves are compare-and-swap against the exact text loaded, so an agent's edit is never clobbered silently. Plain textarea with a syntax-colour layer behind it; agent text only ever renders as React text, never HTML. CRLF files round-trip intact. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014UA3Dk8XywNUyaR3MV5tzP
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Quick edits to a project's instruction and notes files from the dashboard project view, plus a header regroup. Plan:
plans/062-markdown-editor.md. PHASE 62 ACCEPTED 2026-10-10.CLAUDE.md,AGENTS.md,.claude/CLAUDE.md,.logic-loop/board.mdfirst, then root*.md, thendocs/*.md(one level). Files over 1 MB and symlinks pointing outside the project are excluded.@imports, fences, quotes, rules). ⌘S saves. Open in editor (Plan 061) sits beside the filename. Agent memory files carry a note that running agents pick up edits on/clear,/compactor a new session.Safety
md_read/md_writeaccept a name only if it's in a freshmd_listresult, then re-check it withpty::resolve_inside, so callers can't reach../, nested or absolute paths.Verification
cargo test --lib: 185 passed, 1 ignored (5 new inmarkdown.rs: list order/exclusions, outside symlink, unlisted/path names, CAS, non-UTF-8/oversize)npm run check(newmarkdown-editor:check: CRLF round-trip and highlighter alignment),npm run opencode:check,npx tsc --noEmit,npm run build,cargo clippy --all-targets -- -D warnings,git diff --check/clearreload in 116). Results indocs/TESTING.md.Not verified: Windows (CRLF default, editor launch); tracked in the ROADMAP Windows gap table.
Also in this PR: IDEAS entry "Half 1c" (diff pop-out falls back to unstaged changes), found during testing. Not implemented.
🤖 Generated with Claude Code
https://claude.ai/code/session_014UA3Dk8XywNUyaR3MV5tzP