Devenv
Make AI Agents great again!
npx -y skills add MAHDTech/agent-skills --skill devenvAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Strict guidelines for using devenv for shell and dependency management. Use when a repo contains a devenv.nix or devenv.yaml file, or when running commands in a devenv environment.
SKILL.md
3.7 KB, as published. Nobody here has run it
Devenv Integration
When working in a repository that utilizes devenv, you must strictly adhere to the following rules for environment consistency:
- Devenv is Mandatory: For projects containing a
devenv.nixand/ordevenv.yamlfile, strict use ofdevenvfor dependency and shell environment management is required. - DO NOT Run Bare Commands: ALL standard CLI operations MUST run via the devenv shell. Furthermore, you must always provide a reason for the execution via the
SECRETSPEC_REASONenvironment variable to satisfy SecretSpec's audit logging for AI agents. To do this use:
SECRETSPEC_REASON="<reason>" devenv shell -- <command>
- Root Execution Only: You must ONLY run
devenv shellcommands from the root of the repository where thedevenv.nixfile is located.- Never run it from a sub-directory.
- Looking for the
devenv.nixis how you know you are in the right place. - Correct:
SECRETSPEC_REASON="checking code" devenv shell -- cargo check
- Dash-Dash is Mandatory (
--): NEVER usedevenv shell -c <command>. This is an incredibly common mistake. The-cargument is used for a "clean" environment and using it gives unexpected results.- Use
SECRETSPEC_REASON="<reason>" devenv shell -- <command>- this is the right way.
- Use
Pre-commit Hooks and Testing
Devenv gives us the ability to run tests and linters seamlessly. The project-level hooks are run via prek (see the prek skill).
SECRETSPEC_REASON="running tests" devenv test: This triggers all pre-commit hooks (managed byprek) and other defined tests and is mandatory as part of testing.
Verification Hook Run (ALL Repositories):
You must verify that all hooks (Prettier, CSpell, etc.) pass successfully. Check if secretspec.toml exists in the repository root:
- If it exists:
- If
[profiles.ci]is defined, setSECRETSPEC_ENV="ci". - Else if
[profiles.default]is defined, setSECRETSPEC_ENV="default". - Else, use the first profile name defined under
[profiles.<profile_name>]. - Run the validation command:
SECRETSPEC_PROVIDER=env SECRETSPEC_ENV="<env>" SECRETSPEC_REASON="<context-specific-reason>" devenv shell -- prek run -a
- If
- If it does not exist:
- Run the validation command without environment prefix:
SECRETSPEC_REASON="<context-specific-reason>" devenv shell -- prek run -a
- Run the validation command without environment prefix:
If any hook fails, report the failures back.
SecretSpec Integration
Devenv integrates with SecretSpec, a tool that manages secret resolution and auditing.
- Audit Logging and Agent Accountability: Coding agents are required by default to provide a human-readable reason whenever accessing secrets. This is enforced by SecretSpec's
require_reason = "agents"policy. - Always Provide a Reason: To ensure your commands never fail due to unauthorized secret access, you MUST supply a
SECRETSPEC_REASONenvironment variable for everydevenv shellinvocation.
MCP Servers & Skills
- Check all available MCP servers for additional knowledge and skills.
- Prioritize the use of the Devenv MCP server when it is available:
- It can be accessed via
devenv mcpto run locally. - Or via the remote URL:
https://mcp.devenv.sh(Note: requires active internet connection).
- It can be accessed via
References
- Devenv Documentation
- Devenv MCP Server (Online-Only)