{"_id":"@axon-protocol/git-repo-server","name":"@axon-protocol/git-repo-server","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@axon-protocol/git-repo-server","version":"0.1.0","description":"AXON Git Repository Server — Manage Git repositories using child_process.execFile to run git commands with shell injection protection","type":"module","main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"bin":{"axon-git-repo":"src/mcp-stdio.ts"},"scripts":{"build":"tsc","prepublishOnly":"npm run build","start":"npx tsx src/index.ts","mcp":"npx tsx src/mcp-stdio.ts","dev":"npx tsx --watch src/index.ts"},"keywords":["axon","git","repository","version-control","mcp","ai-agent","tools"],"repository":{"type":"git","url":"git+https://github.com/hchihoub/axon-protocol.git","directory":"servers/git-repo"},"homepage":"https://github.com/hchihoub/axon-protocol#readme","author":{"name":"AXON Protocol Contributors"},"license":"MIT","dependencies":{},"peerDependencies":{"@axon-protocol/sdk":"^0.1.0"},"devDependencies":{"typescript":"^5.4.0","tsx":"^4.7.0"},"gitHead":"7f39259c0dec0b320371c8ab84ea3d2b1e3bdd58","_id":"@axon-protocol/git-repo-server@0.1.0","bugs":{"url":"https://github.com/hchihoub/axon-protocol/issues"},"_nodeVersion":"25.8.0","_npmVersion":"11.11.0","dist":{"integrity":"sha512-+dCcy9a5J6OhaB6RISGNzfX/9nmRg2AX53J/5yuyJe6GqbKoNeZ3Z1REMqKwUb7drcNKWQxTq6qk2cPaviceMA==","shasum":"7ed000ca963335cf197ebde17effed386b9b51dc","tarball":"https://registry.npmjs.org/@axon-protocol/git-repo-server/-/git-repo-server-0.1.0.tgz","fileCount":22,"unpackedSize":149052,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC+snVHk+fbgCs095Nxyq5A6v0UW2zH/MHHhtBG87uyIAIhAKUE6nEOT2nW//e36o6ZgH8pzwtVJhOw6hthuN3NetEu"}]},"_npmUser":{"name":"hec-28","email":"chihoub.houssem@gmail.com"},"directories":{},"maintainers":[{"name":"hec-28","email":"chihoub.houssem@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/git-repo-server_0.1.0_1773680563802_0.8962483980184377"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-16T17:02:43.651Z","0.1.0":"2026-03-16T17:02:43.952Z","modified":"2026-03-16T17:02:44.478Z"},"maintainers":[{"name":"hec-28","email":"chihoub.houssem@gmail.com"}],"description":"AXON Git Repository Server — Manage Git repositories using child_process.execFile to run git commands with shell injection protection","homepage":"https://github.com/hchihoub/axon-protocol#readme","keywords":["axon","git","repository","version-control","mcp","ai-agent","tools"],"repository":{"type":"git","url":"git+https://github.com/hchihoub/axon-protocol.git","directory":"servers/git-repo"},"author":{"name":"AXON Protocol Contributors"},"bugs":{"url":"https://github.com/hchihoub/axon-protocol/issues"},"license":"MIT","readme":"# @axon-protocol/git-repo-server\n\nAXON Git Repository Server -- manage Git repositories using `child_process.execFile` to run git commands with shell injection protection.\n\n## Tools (10)\n\n| Tool | Description | Capabilities |\n|------|-------------|-------------|\n| `git_status` | Show working tree status (modified, staged, untracked) | read |\n| `git_log` | Show commit history (configurable count, format) | read |\n| `git_diff` | Show diffs (staged, unstaged, between commits) | read |\n| `git_branch` | List, create, delete, or switch branches | write |\n| `git_commit` | Stage files and create a commit | write |\n| `git_stash` | Stash, pop, list, or drop stash entries | write |\n| `git_remote` | List, add, or remove remotes | write |\n| `git_pull` | Pull changes from remote | write |\n| `git_push` | Push commits to remote | write |\n| `git_blame` | Show line-by-line authorship for a file | read |\n\n## Security\n\n- All git commands scoped to a configurable repository directory\n- Uses `child_process.execFile` (not `exec`) to prevent shell injection\n- Force push uses `--force-with-lease` and requires explicit configuration\n- Large diffs, logs, and blame results stored in OCRS\n- `GIT_TERMINAL_PROMPT=0` prevents interactive credential prompts\n\n## Configuration\n\n| Environment Variable | Description | Default |\n|---------------------|-------------|---------|\n| `AXON_GIT_REPO` | Repository directory | Current directory |\n| `AXON_GIT_ALLOW_FORCE_PUSH` | Allow force push operations | `false` |\n\n## Usage\n\n### MCP Server (stdio)\n\n```bash\nAXON_GIT_REPO=/home/user/my-project npx tsx src/mcp-stdio.ts\n```\n\n### Programmatic\n\n```typescript\nimport { launchGitRepoServer } from \"@axon-protocol/git-repo-server\";\n\nconst { server, grm } = await launchGitRepoServer({\n  repoDir: \"/home/user/my-project\",\n  allowForcePush: false,\n});\n\nconsole.log(`${server.toolCount} tools ready`);\n```\n\n## Development\n\n```bash\nnpm install\nnpm run build\nnpm run dev\n```\n","readmeFilename":"README.md","_rev":"1-b8052f5c9948758effa5e812ed704b94"}