-
Notifications
You must be signed in to change notification settings - Fork 49
Description
Problem
When installing packages from private repositories, the shorthand syntax fails even when SSH is properly configured:
# ❌ fails for private repos — APM tries HTTPS even with SSH configured
apm install Azos-Seguros/my-private-repo/skills/my-skill
# Error: not accessible or doesn't existThe only workaround today is to use the verbose object format in apm.yml:
dependencies:
apm:
- git: git@github.com:Azos-Seguros/my-private-repo.git
path: skills/my-skillThis works, but it's a much worse developer experience compared to the simple shorthand.
Expected behavior
APM should detect that the user has SSH configured for GitHub (via ~/.ssh/config or ssh-agent) and fall back to SSH when HTTPS authentication fails for the shorthand format:
# ✅ should work when SSH is configured
apm install Azos-Seguros/my-private-repo/skills/my-skillAlternatively, a flag could help:
apm install Azos-Seguros/my-private-repo/skills/my-skill --sshWhy it matters
Many teams and organizations use SSH exclusively for GitHub authentication (no PAT tokens). Requiring the object format in apm.yml for every private package defeats the simplicity that makes APM compelling — especially when onboarding teams that already have SSH set up.
Environment
- APM version: 0.8.0
- OS: macOS
- Auth: SSH via keyring (
git operations protocol: ssh), noGITHUB_CLI_PAT/GITHUB_TOKENset ssh -T git@github.comauthenticates successfully