Skip to main content

GCA: Make work inspectable

GCA

Autonomous work. Explicit permissions. Inspectable outcomes.

An open source, decision-oriented agent runtime for work you need to understand and control.

PyPI Python License

Quickstart · Capabilities · Architecture · Security · 中文介绍

GCA combines a model-driven agent loop, human approval, persistent history and a built-in web interface. Connect your own model and tools; keep control over what the agent can execute and inspect the records behind its answers.

Its design keeps four things distinct: what was proposed, what was authorized, what executed, and what the evidence supports. A successful tool call is recorded separately from a verified outcome.

Quickstart

Use Python 3.12 in a virtual environment:

python3.12 -m venv .venv
source .venv/bin/activate
pip install --upgrade generative-agent-assistant
gca init
gca serve

Open http://127.0.0.1:8001 and register a local account.

The wizard asks for an OpenAI-compatible API base URL, model name and API key. Secret prompts do not echo their values. Use gca doctor to check configuration and optional integrations.

Configuration and basic local data live in ~/.gca. To choose another directory, run gca init --home /path/to/gca-home and use the same --home for doctor and serve. An upgrade retains this directory; it does not embed it in the package.

What makes GCA different

Capability What it gives you
Model-driven execution The model chooses tools, gathers results and adjusts its approach inside a bounded loop.
Explicit human approval Controlled actions wait for a decision bound to server-held parameters. Rejection does not authorize a replacement action.
Inspectable decisions Where recorded, view candidates, public reasons, expectations and observed results with source locations. Missing facts stay missing.
Work documents for complex tasks Separate action and checking documents retain useful goals, progress, evidence summaries and unresolved items.
Independent internal checking An optional checking unit uses a restricted tool pool and returns findings to the action loop. It is off by default and has deployment prerequisites.
History on demand The agent can query authorized history and source records. History does not silently become new permission or current business truth.
Bring your own tools Connect MCP services; generic file, search and delegation tools are included. Domain integrations remain under your control.
One web application Chat, approvals, decision history, session observation and memory views are served with the Python package.

Things to try

  • “Compare these two approaches, explain the tradeoff, and ask me before making the change.”
  • “Read my workspace files, prepare a report, and identify what you could not verify.”
  • “Find my earlier decision about this task and show the supporting records.”

Available behavior depends on configured tools and storage. The last example's ledger-backed history needs PostgreSQL; missing evidence must not be invented.

Choose your deployment

Deployment Included behavior You provide
Local quickstart Authenticated chat, streaming, SQLite session history, generic tools and the web UI Your model endpoint
Ledger-backed runtime PostgreSQL journals, Claim records, decision/history views and persistent personal memory Provisioned PostgreSQL with the required owner/runtime roles
Background processing Asynchronous work and supported command execution Redis, Taskiq worker and a supported sandbox/runner
File ingestion Upload and parsing services Configured MinIO and applicable parsing services
Enhanced complex tasks Task packages, work documents and independent internal checking PostgreSQL, trusted material storage and compatible model/tool configuration; explicit enablement

See deployment and upgrade notes. SQL resources are empty-schema code, not user data. Installing the package does not initialize a real PostgreSQL database or grant database privileges.

The enhanced workflow is disabled by default. It adds model calls and latency; this release does not claim it improves every task. A requested check that is unavailable must be reported as unmet.

Architecture

flowchart LR
    U[User goal and authorization] --> A[Action loop]
    A <--> W[Action work document]
    A --> P[Permission and approval gates]
    P --> T[Authorized tools]
    T --> E[Observed results and source records]
    E --> A
    A --> S[Candidate submission]
    S --> C[Optional independent checking loop]
    C <--> D[Checking work document]
    C -->|Specific gaps| A
    C --> R[Controller validates receipt and limits]
    S -->|Ordinary path| R
    R --> F[Deliver, wait, or explain what remains]

Models make semantic judgments; program boundaries govern identity, tool availability, permission, versions and bounded continuation. Work documents organize useful context. Raw tool and resource records remain the evidence behind them.

For business applications, connect authorized Ontology views and actions through your integration layer. This release supplies a general runtime; it contains no enterprise Ontology, proprietary business rules or ready-made business data pipeline.

Connect MCP tools

Edit $GCA_HOME/mcp.json and connect a server you operate or trust:

{"servers": [{"id": "my-tools", "url": "http://127.0.0.1:9001/mcp", "enabled": true, "modes": ["agent"]}]}

External tool output is not authorization, and tool availability is not a security guarantee. Do not commit real service URLs, authentication headers or credentials.

Security

The CLI defaults to loopback, generates a deployment-specific JWT secret and writes owner-only configuration. File tools require a bound user workspace and reject traversal and cross-user access. Command execution requires a supported platform boundary; obsolete or unsupported settings disable the capability. There is no automatic unsandboxed fallback.

Release archives use explicit inclusion rules and exclude runtime configuration, databases and logs. Read the security policy, maintenance cases and release validation. These document specific controls and tests, not unconditional safety certification.

Development

git clone https://github.com/xualbert83/generative-agent-assistant.git
cd generative-agent-assistant
uv sync --group dev
./scripts/gate.sh
uv build

Tests use temporary runtime directories. Never use production credentials or customer data in a test. See CONTRIBUTING.md.

License and attribution

GCA's original source is released under the MIT License. You may use, modify and redistribute it, including commercially, subject to retaining the copyright and permission notice. The software is provided without warranty; full legal terms are in LICENSE.

Bundled third-party components retain their own licenses. ECharts, marked, DOMPurify and Source Serif 4 are covered by their respective notices and are not relicensed as GCA code. See NOTICE and the notices shipped inside the package.

Maintained by Albert Xu. Read the changelog or open an issue.

Metadata

Release files for generative-agent-assistant 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for generative-agent-assistant 0.2.0
File Size Uploaded Provenance Actions
generative_agent_assistant-0.2.0.tar.gz 7.2 MB Without provenance Details for generative_agent_assistant-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for generative-agent-assistant 0.2.0
File Interpreter ABI Platform Actions
generative_agent_assistant-0.2.0-py3-none-any.whl Python 3 none any Details for generative_agent_assistant-0.2.0-py3-none-any.whl

Total release size: 14.4 MB

Release files / generative_agent_assistant-0.2.0.tar.gz

Download URL generative_agent_assistant-0.2.0.tar.gz
Size 7.2 MB
Tags Source
SHA-256 checksum
How to use checksums
bf6eaad73fd1b496483b8005512517b64815c7aba02d8dc32dccf60c8899d519
BLAKE2b-256 checksum
How to use checksums
f7634d2614e962f8aafdc29dbf043703fa13c8d7322bdd8e1e34652f080383e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release files / generative_agent_assistant-0.2.0-py3-none-any.whl

Download URL generative_agent_assistant-0.2.0-py3-none-any.whl
Size 7.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
a5c0c6b90521a1172200a75ee07134a81e7da1fa567c5d269fef0404971e4b10
BLAKE2b-256 checksum
How to use checksums
3368bb8c48e72ddc5d74a53d65befdf37b582e0429c038a3c482bc71ee370183
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Security for generative-agent-assistant 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page