PHPackages                             coquibot/coqui-toolkit-git - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. coquibot/coqui-toolkit-git

ActiveLibrary

coquibot/coqui-toolkit-git
==========================

Git repository management toolkit for Coqui — status, staging, commits, branches, tags, remotes, push/pull, merge, diff, log

v0.1.0(1mo ago)01↓100%MITPHPPHP ^8.4CI passing

Since Mar 17Pushed 1mo agoCompare

[ Source](https://github.com/carmelosantana/coqui-toolkit-git)[ Packagist](https://packagist.org/packages/coquibot/coqui-toolkit-git)[ RSS](/packages/coquibot-coqui-toolkit-git/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (3)Versions (2)Used By (0)

Coqui Git Toolkit
=================

[](#coqui-git-toolkit)

Git repository management toolkit for [Coqui](https://github.com/AgentCoqui/coqui). Provides full Git CLI access — status, staging, commits, branches, tags, remotes, push/pull, merge, diff, and log — all sandboxed through typed tools with proper argument escaping.

Requirements
------------

[](#requirements)

- PHP 8.4+
- Git CLI installed and on PATH
- [Coqui](https://github.com/AgentCoqui/coqui) (auto-discovered via Composer)

Installation
------------

[](#installation)

```
composer require coquibot/coqui-toolkit-git
```

When installed alongside Coqui, the toolkit is **auto-discovered** via Composer's `extra.php-agents.toolkits` — no manual registration needed.

Tools Provided
--------------

[](#tools-provided)

### `git_init`

[](#git_init)

Initialize a new Git repository.

ParameterTypeRequiredDescription`path`stringNoDirectory to initialize (defaults to cwd)`branch`stringNoName for the initial branch### `git_status`

[](#git_status)

Show the working tree status — modified, staged, and untracked files.

ParameterTypeRequiredDescription`path`stringNoRepository path`short`boolNoUse short format output### `git_stage`

[](#git_stage)

Stage, unstage, or reset files in the Git index.

ParameterTypeRequiredDescription`action`enumYes`add`, `add_all`, or `reset``files`stringNoSpace-separated file paths (required for `add` and `reset`)`path`stringNoRepository path### `git_commit`

[](#git_commit)

Create a new commit with a message.

ParameterTypeRequiredDescription`message`stringYesCommit message`all`boolNoAuto-stage all modified tracked files (-a)`amend`boolNoAmend the previous commit`path`stringNoRepository path### `git_diff`

[](#git_diff)

Show differences between working tree, staged changes, or between commits.

ParameterTypeRequiredDescription`scope`enumYes`working`, `staged`, or `commits``ref1`stringNoFirst commit/branch ref (required for `commits`)`ref2`stringNoSecond ref (defaults to HEAD)`file`stringNoLimit diff to a specific file`stat_only`boolNoShow only diffstat summary`path`stringNoRepository path### `git_log`

[](#git_log)

View commit history with optional filters.

ParameterTypeRequiredDescription`count`intNoMax commits to show (default: 10, max: 100)`oneline`boolNoCompact one-line format`author`stringNoFilter by author`since`stringNoShow commits after this date`until`stringNoShow commits before this date`grep`stringNoFilter by commit message`file`stringNoShow only commits touching this file`ref`stringNoBranch or commit to start from`path`stringNoRepository path### `git_branch`

[](#git_branch)

Manage Git branches — list, create, delete, rename.

ParameterTypeRequiredDescription`action`enumYes`list`, `create`, `delete`, `rename`, or `current``name`stringNoBranch name (required for create/delete/rename)`new_name`stringNoNew name when renaming`from`stringNoStart point for new branch`force`boolNoForce delete (-D)`all`boolNoList remote-tracking branches too`path`stringNoRepository path### `git_checkout`

[](#git_checkout)

Switch branches, create+switch, or restore files.

ParameterTypeRequiredDescription`target`stringYesBranch, tag, or commit hash`create`boolNoCreate and switch (-b)`files`stringNoSpace-separated files to restore`path`stringNoRepository path### `git_tag`

[](#git_tag)

Manage Git tags — list, create, delete.

ParameterTypeRequiredDescription`action`enumYes`list`, `create`, or `delete``name`stringNoTag name (required for create/delete)`message`stringNoAnnotation message (creates annotated tag)`ref`stringNoCommit to tag (defaults to HEAD)`pattern`stringNoGlob filter for listing (e.g. "v1.\*")`path`stringNoRepository path### `git_remote`

[](#git_remote)

Manage Git remotes — list, add, remove, show.

ParameterTypeRequiredDescription`action`enumYes`list`, `add`, `remove`, or `show``name`stringNoRemote name (required for add/remove/show)`url`stringNoRemote URL (required for add)`path`stringNoRepository path### `git_push`

[](#git_push)

Push local commits to a remote repository.

ParameterTypeRequiredDescription`remote`stringNoRemote name (default: "origin")`branch`stringNoBranch to push (defaults to current)`force`boolNoForce push`tags`boolNoPush all tags`set_upstream`boolNoSet upstream tracking (-u)`path`stringNoRepository path### `git_pull`

[](#git_pull)

Fetch and integrate changes from a remote repository.

ParameterTypeRequiredDescription`remote`stringNoRemote name (default: "origin")`branch`stringNoRemote branch to pull`rebase`boolNoRebase instead of merge`path`stringNoRepository path### `git_merge`

[](#git_merge)

Merge a branch into the current branch.

ParameterTypeRequiredDescription`branch`stringNoBranch to merge (required unless aborting)`no_ff`boolNoCreate merge commit even if fast-forward possible`message`stringNoCustom merge commit message`abort`boolNoAbort an in-progress merge`path`stringNoRepository pathUsage Examples
--------------

[](#usage-examples)

### Feature Branch Workflow

[](#feature-branch-workflow)

```
git_branch(action: "create", name: "feature/new-api")
git_checkout(target: "feature/new-api")
# ... make changes ...
git_stage(action: "add_all")
git_commit(message: "feat: implement new API endpoint")
git_push(branch: "feature/new-api", set_upstream: true)

```

### Quick Commit

[](#quick-commit)

```
git_status(short: true)
git_diff(scope: "working")
git_stage(action: "add", files: "src/Handler.php src/Router.php")
git_commit(message: "fix: handle null response in router")

```

### Reviewing History

[](#reviewing-history)

```
git_log(count: 10, oneline: true)
git_diff(scope: "commits", ref1: "HEAD~5")
git_diff(scope: "commits", ref1: "main", ref2: "feature/x", stat_only: true)

```

### Tagging a Release

[](#tagging-a-release)

```
git_tag(action: "create", name: "v1.2.0", message: "Release 1.2.0")
git_push(tags: true)

```

Architecture
------------

[](#architecture)

```
src/
├── GitToolkit.php              # ToolkitInterface — registers all tools + guidelines
├── Runtime/
│   ├── GitRunner.php           # proc_open wrapper with timeout + output truncation
│   └── GitResult.php           # Typed result VO (exitCode, stdout, stderr)
└── Tool/
    ├── GitInitTool.php
    ├── GitStatusTool.php
    ├── GitStageTool.php
    ├── GitCommitTool.php
    ├── GitDiffTool.php
    ├── GitLogTool.php
    ├── GitBranchTool.php
    ├── GitCheckoutTool.php
    ├── GitTagTool.php
    ├── GitRemoteTool.php
    ├── GitPushTool.php
    ├── GitPullTool.php
    └── GitMergeTool.php

```

Development
-----------

[](#development)

```
# Install dependencies
composer install

# Run tests
composer test

# Static analysis
composer analyse
```

License
-------

[](#license)

MIT

###  Health Score

36

—

LowBetter than 82% of packages

Maintenance89

Actively maintained with recent releases

Popularity2

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

53d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/597820?v=4)[Carmelo Santana](/maintainers/carmelosantana)[@carmelosantana](https://github.com/carmelosantana)

---

Top Contributors

[![carmelosantana](https://avatars.githubusercontent.com/u/597820?v=4)](https://github.com/carmelosantana "carmelosantana (2 commits)")

---

Tags

gittoolkitphp-agentscoquiversion control

###  Code Quality

TestsPest

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/coquibot-coqui-toolkit-git/health.svg)

```
[![Health](https://phpackages.com/badges/coquibot-coqui-toolkit-git/health.svg)](https://phpackages.com/packages/coquibot-coqui-toolkit-git)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
