Describe the bug
When running apm install --target opencode, APM correctly restricts skill deployment
to .opencode/skills/ but unconditionally writes prompts to .github/prompts/ and
agents to .github/agents/, creating a .github/ directory even when the user never
requested it.
To Reproduce
- Create a fresh directory with only
.opencode/ present
- Run
apm install some/package --target opencode
- Observe
.github/prompts/ and .github/agents/ created alongside .opencode/
Expected behavior
With --target opencode, only .opencode/ should be written to.
No .github/ directory should be created or modified.
Root cause (identified)
In src/apm_cli/commands/install.py, _integrate_package_primitives() runs
prompt_integrator.integrate_package_prompts() and
agent_integrator.integrate_package_agents() unconditionally. The integrate_vscode
guard is only applied to instructions and hooks, not to prompts and .github/agents/.
# No integrate_vscode guard — always writes to .github/prompts/
prompt_result = prompt_integrator.integrate_package_prompts(...)
# No integrate_vscode guard — always writes to .github/agents/
agent_result = agent_integrator.integrate_package_agents(...)
# Correctly guarded
if integrate_vscode:
instruction_result = ...
Fix: guard both calls behind if integrate_vscode:.
Environment
- OS: Linux/WSL2
- Python Version: 3.12
- APM Version: main@b56c537cf5a23807b01ca7ea434968981bdded36
Describe the bug
When running
apm install --target opencode, APM correctly restricts skill deploymentto
.opencode/skills/but unconditionally writes prompts to.github/prompts/andagents to
.github/agents/, creating a.github/directory even when the user neverrequested it.
To Reproduce
.opencode/presentapm install some/package --target opencode.github/prompts/and.github/agents/created alongside.opencode/Expected behavior
With
--target opencode, only.opencode/should be written to.No
.github/directory should be created or modified.Root cause (identified)
In
src/apm_cli/commands/install.py,_integrate_package_primitives()runsprompt_integrator.integrate_package_prompts()andagent_integrator.integrate_package_agents()unconditionally. Theintegrate_vscodeguard is only applied to
instructionsandhooks, not to prompts and.github/agents/.Fix: guard both calls behind if integrate_vscode:.
Environment