Argo Hub
A multi-agent CLI on the Crowe Logic engine. Installed as crowe-argo, run as argo.
pip install crowe-argo
argo login
argo
What you get
Four agents, each on a deployment sized for what it does:
| Agent | Model | Why that one |
|---|---|---|
argo_planner |
claude-opus-5 | One high-value call per run. Small capacity, so plan with it, do not fan out on it. |
argo_coder |
gpt-5.5 | The widest tier on the account, which is what the highest-volume agent needs. |
argo_reviewer |
gpt-5.6-sol | Frontier reasoning with real headroom. Review is bursty. |
argo_researcher |
gpt-5.5 | The widest tier on the account. Research dominates a fan-out. |
argo models lists the full roster. crowelm-deepparallel is also available: a
GLM-5.2 and Kimi-K2.7-code fusion synthesized by DeepSeek-V4-Pro. It is capped
at 20 requests per minute account-wide, so treat it as a planner or specialist
route, never a bulk carrier.
Your own agents
Drop a YAML file next to the shipped ones:
name: my_agent
description: "What it does"
model: gpt-5.6-luna
tools:
- read_file
- grep_search
prompt_override: |
Your instructions.
A file whose name matches a builtin replaces that builtin, so you can retune a
shipped agent without forking anything.
Brand
The accent is derived, not chosen: tools/derive_brand.py optimises for
maximum perceptual distance from every colour the stack already uses, under
normal vision and three colour-vision deficiencies. The mark is Canopus over
the keel of Argo Navis. Sources, exports and the reasoning are in brand/;
brand/export/argo-brand-card.png is the one-page sheet. On iTerm2-class
terminals the mark renders above the wordmark and beside every answer; on the
rest, the ✦ glyph does. Send a brand and they become yours instead.
For maintainers: adding the next customer
This package is about forty lines. All behavior lives in the crowe-logic
engine it depends on, so engine fixes arrive with a version bump rather than a
port. To add a customer, copy this layout and change the profile.
The one rule that will bite you. cli.branding resolves its entire palette
into module-level constants at import time. A profile activated after that
import themes nothing and raises nothing, so the customer gets Crowe Logic's
gold under their own name and no error anywhere.
That is why __init__.py imports the engine inside main():
def main():
from cli.profile import activate
activate(ARGO) # first
from cli.crowe_logic import main as engine_main # second
return engine_main()
At module scope, merely importing the package could pull in cli.branding
first. activate() raises ProfileActivationError if the order is ever broken,
and tests/test_wheel.py pins it in a subprocess, because import state is
process-global and an in-process test would only prove something about test
ordering.
model_roster is display only. It fills the models listing and completion.
Entitlement is enforced at the gateway against the bearer token, because a
roster in an installed Python file is bypassed by editing that file. Do not grow
it into access control; it cannot be one.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
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 crowe_argo-0.1.7.tar.gz.
File metadata
- Download URL: crowe_argo-0.1.7.tar.gz
- Upload date:
- Size: 44.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6050cf7bffbff8ad85361352cc3325adce3a2f52cb8c986645dac307f6a99b60
|
|
| MD5 |
51c0d9fd153b00bf121b010ee7c45f21
|
|
| BLAKE2b-256 |
998a2ca059f1116661d9cbe226452bd2e1a3036ae2f54581019a4529afa8c736
|
File details
Details for the file crowe_argo-0.1.7-py3-none-any.whl.
File metadata
- Download URL: crowe_argo-0.1.7-py3-none-any.whl
- Upload date:
- Size: 38.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
880cf4f491843900121e06886bda9ebb25fd54a427764ee69eb97fcf43ad4a77
|
|
| MD5 |
42e47d6d2618144ceb7b6cb1d1b7d1c0
|
|
| BLAKE2b-256 |
0c55022a4f483fbb9a80dd17bbfa96c274933e82aaf76f2f3b0b70adefd7f7f7
|