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.19.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.19.0.tar.gz.
File metadata
- Download URL: chp_adapter_git-0.19.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 |
a8504a00b637cd7153f450c84123f4e64be7c414950c5f1c1f82d4e5b8f6ee9d
|
|
| MD5 |
02e9b40c2270314ed943543b6ce0caa3
|
|
| BLAKE2b-256 |
7e7510647609d3d5714f34aa8cbe891886ab4dc642a4525cac214ebd3661ed24
|
File details
Details for the file chp_adapter_git-0.19.0-py3-none-any.whl.
File metadata
- Download URL: chp_adapter_git-0.19.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 |
652f654a65fd587c6ebd6ddd5637f2e779479b588f6bd38d324fdd01c8438935
|
|
| MD5 |
2a95947279a784179364574338ee6029
|
|
| BLAKE2b-256 |
995c8d76b8989156347796348728783d7b71ed17a82ed5ef9d5f21072d6c6bae
|