chp-adapter-git
CHP capability adapter for local Git repository inspection and operations.
Capabilities
| Capability ID | Risk | Description |
|---|---|---|
chp.adapters.git.status |
low | Working tree status: branch, staged/unstaged/untracked counts |
chp.adapters.git.inspect_repo |
low | Repository overview: branch, HEAD SHA, remotes, commit count |
chp.adapters.git.log |
low | Recent commits list (sha7, author, subject, date) |
chp.adapters.git.diff_summary |
low | Diff statistics: files changed, insertions, deletions |
chp.adapters.git.precommit_check |
low | Staged file list + unstaged/untracked counts |
chp.adapters.git.checkout_branch |
medium | Create or switch to a branch |
chp.adapters.git.commit |
medium | Stage files and commit with a message |
Evidence Hygiene
- Diff content (patch text): never in evidence
- File content: never in evidence
- Commit messages: not in evidence (only sha7/count in events)
- Commit subjects truncated to 80 chars in
logoutput
Usage
from chp_core import LocalCapabilityHost, SQLiteEvidenceStore
from chp_adapter_git import GitAdapter, GitConfig
store = SQLiteEvidenceStore("evidence.db")
host = LocalCapabilityHost(store=store)
host.register_adapter(GitAdapter(config=GitConfig(default_repo_path="/path/to/repo")))
result = await host.ainvoke("chp.adapters.git.status", {})
print(result.output) # {"branch": "main", "staged": 0, "unstaged": 1, "untracked": 2, "clean": False}
Testing with Injectable Backend
class FakeGitBackend:
def run(self, *args, cwd=None):
return {"rev-parse --abbrev-ref HEAD": "main"}.get(" ".join(args), "")
adapter = GitAdapter(config=GitConfig(backend=FakeGitBackend()))
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
chp_adapter_git-0.20.0.tar.gz
(10.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file chp_adapter_git-0.20.0.tar.gz.
File metadata
- Download URL: chp_adapter_git-0.20.0.tar.gz
- Upload date:
- Size: 10.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50257651d3a44d60446e9cfdab35fd1f2081154add775ec891da8dfa6e0a2996
|
|
| MD5 |
864c89d5d889097e533c89907b2d45fe
|
|
| BLAKE2b-256 |
d324ca0be79eda6d27aca8ce35eee0fd8424d139d96445d4b81771bd98dea77a
|
File details
Details for the file chp_adapter_git-0.20.0-py3-none-any.whl.
File metadata
- Download URL: chp_adapter_git-0.20.0-py3-none-any.whl
- Upload date:
- Size: 7.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9aef2050b2294f96958ec2f7a914e8ed387cf59288ecea00abb9f0badf40b496
|
|
| MD5 |
227f48e17d9ceca7fb40d6c938004781
|
|
| BLAKE2b-256 |
8ae94136920b9055d797c291fe253bc2efbc8d06514c38f76cee0c573461a9b0
|