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.16.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.16.0.tar.gz.
File metadata
- Download URL: chp_adapter_git-0.16.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 |
faf96f6627a643c4d10791f3e3a5567f7a2eb0f37e87447001d9b8c17928daf3
|
|
| MD5 |
1f6ab5a94473616d69ab1d6de9c8a822
|
|
| BLAKE2b-256 |
a9e09c8f72f1c823ee52d2ccf12785fc55556f8fec9ebf93bce1187ff2e3b707
|
File details
Details for the file chp_adapter_git-0.16.0-py3-none-any.whl.
File metadata
- Download URL: chp_adapter_git-0.16.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 |
11de578bb892988a396bbe296454653906e6cde5a340f18dbc2162377e4c795a
|
|
| MD5 |
d2280a1d1cda76503463abe89bb93560
|
|
| BLAKE2b-256 |
ac839fe83a8673198d8cc3493229f563901f86514d065f38d5fa554cd5f32708
|