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.27.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.27.0.tar.gz.
File metadata
- Download URL: chp_adapter_git-0.27.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 |
27794f68f57bcf650043f90c85bfcffc6e93f8cfef13dc5816f45f23aa72a723
|
|
| MD5 |
c03a17baca26115ae0f808b88aa2435d
|
|
| BLAKE2b-256 |
bbe46b55bb77fd5589c5ad4e9f7e2fe54660d17fa2698fb7b701ce062ea3c9f6
|
File details
Details for the file chp_adapter_git-0.27.0-py3-none-any.whl.
File metadata
- Download URL: chp_adapter_git-0.27.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 |
6a1cb0b7faca83cf1ff2c990165a9b76a4ac9022207a1daee6a0e88a3fc55a09
|
|
| MD5 |
58eae0117618899196cba49b981bac24
|
|
| BLAKE2b-256 |
bd83d5ad67e2cacec9372e992182b8625847c86a8e3412a8f243e61c557ca33a
|