devia is for every agent - #5
Merged
Merged
Conversation
0.2.0 shipped --global serving Claude Code alone. Two of the four SKIP reasons were wrong: they stated an absence that had never been verified. Checking the machine instead of assuming: - ~/.cursor/rules/ exists and holds user-level .mdc rules, with the same frontmatter the devia adapter already ships - ~/.codex/skills/ uses the same SKILL.md convention as Claude Code - ~/.gemini/GEMINI.md is a single global instruction file So --global now writes, each in the format the agent actually reads: the skill pack for Claude Code and Codex, the rules adapter for Cursor, the universal contract for Gemini. CLAUDE_CONFIG_DIR and CODEX_HOME are honoured. Copilot and Windsurf still report SKIP with the reason -- their user-level configuration is editor settings rather than a file devia can place -- and that is now debt D8 with what must be established before building, not a silent omission. Ownership decides how a path is written. A directory the agent owns (~/.claude/skills, ~/.codex/skills, ~/.cursor/rules) is added to freely. A file the user owns (~/.gemini/GEMINI.md) is written only when absent or empty; otherwise SKIP says why and the content stays. --force overrides both and names every path it took. Registries, recorded with the tool itself: - G6 opened and closed: devia is for every agent, no agent is privileged - D8 opened: no user-level install for Copilot and Windsurf - 01_ARCHITECTURE carries the decision, so a future surface serving one agent has to say why the others are not served Version: package 0.3.0, standard unchanged at 0.1.0. Verified: 33 tests with and without FORCE_COLOR, including one that writes into a temporary home and asserts a plain install touches nothing outside the repository, that each agent receives its own format, and that an edited file survives without --force. validate clean, check P0 clear, memory validate clean.
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.
0.2.0 shipped --global serving Claude Code alone. Two of the four SKIP reasons were wrong: they stated an absence that had never been verified. Checking the machine instead of assuming:
So --global now writes, each in the format the agent actually reads: the skill pack for Claude Code and Codex, the rules adapter for Cursor, the universal contract for Gemini. CLAUDE_CONFIG_DIR and CODEX_HOME are honoured.
Copilot and Windsurf still report SKIP with the reason -- their user-level configuration is editor settings rather than a file devia can place -- and that is now debt D8 with what must be established before building, not a silent omission.
Ownership decides how a path is written. A directory the agent owns (~/.claude/skills, ~/.codex/skills,
/.cursor/rules) is added to freely. A file the user owns (/.gemini/GEMINI.md) is written only when absent or empty; otherwise SKIP says why and the content stays. --force overrides both and names every path it took.Registries, recorded with the tool itself:
Version: package 0.3.0, standard unchanged at 0.1.0.
Verified: 33 tests with and without FORCE_COLOR, including one that writes into a temporary home and asserts a plain install touches nothing outside the repository, that each agent receives its own format, and that an edited file survives without --force. validate clean, check P0 clear, memory validate clean.
Summary
Type
Devia compliance
.devia/layout, CLI contract):CHANGELOG.mdupdated:npm run build:index):Checks
npm run validatepassesnpm testpassesnode bin/devia.mjs check --root .passesdevia initstill produces a valid project (devia validateclean in a scratch repo)Not verified