Project-Level Configuration
Tracing is always configured per-project. Each project traces to its own Infinium agent:
cd /path/to/project-a
infinium-cline init
# Enter Project A's Agent ID and Secret
cd /path/to/project-b
infinium-cline init
# Enter Project B's Agent ID and Secret
| Location | Contents |
|---|---|
.infinium/config.json in project root | Agent ID, base URL, trace granularity |
.clinerules/hooks/* in project root | One executable hook script per Cline event (POSIX sh on Unix, .cmd on Windows) |
| VS Code setting | ”Enable Hooks” — required once per workstation |
Add
.infinium/to your.gitignoreto keep credentials out of version control..clinerules/is project-specific and can be committed if you want your team to share the hooks.
Resolution Order
When a hook fires, the connector resolves credentials in this order:
- Project config —
.infinium/config.jsonat or above the working directory - Environment variables — Override project config (for CI/Docker)
Credential Storage
| Data | Storage | Security |
|---|---|---|
| Agent ID | Config file (JSON) | Non-sensitive identifier |
| Agent Secret | OS keyring | Encrypted by the operating system |
| Base URL | Config file (JSON) | Non-sensitive |
The connector never stores your agent secret in a file. It uses the OS keyring:
- Windows: Windows Credential Manager
- macOS: Keychain
- Linux: Secret Service (GNOME Keyring, KDE Wallet)
Updating Credentials
infinium-cline update-credentials
Or pass flags directly:
infinium-cline update-credentials --agent-id "new-id" --agent-secret "new-secret"
Pause and Resume
Temporarily disable tracing without removing your configuration:
# Pause — hooks stay installed but traces are skipped
infinium-cline pause
# Resume — traces start sending again
infinium-cline resume
Check current state with infinium-cline status.
Trace Granularity
Cline sessions are task-scoped. The connector flushes exactly one trace per task on TaskComplete or TaskCancel. There’s no per-turn flush option — Cline’s model is one trace per task lifecycle.
Environment Variables
All settings can be overridden with environment variables. This is useful for CI/CD, Docker, or headless environments where the interactive wizard can’t run.
Credentials
| Variable | Description | Default |
|---|---|---|
INFINIUM_AGENT_ID | Agent ID | From config file |
INFINIUM_AGENT_SECRET | Agent secret | From OS keyring |
INFINIUM_BASE_URL | API base URL | https://platform.i42m.ai/api/v1 |
Connector Behavior
| Variable | Description | Default |
|---|---|---|
CONNECTOR_QUIET | Suppress output (true/false) | false |
CONNECTOR_FLUSH_ON_SESSION_END | Send trace on TaskComplete/TaskCancel | true |
CONNECTOR_SESSION_TTL | Stale session cleanup threshold (seconds) | 1800 |
CONNECTOR_SESSION_DIR | Override temp directory for session files | System temp |
CONNECTOR_MAX_INPUT_PREVIEW | Max characters of prompt preview | 200 |
CONNECTOR_MAX_OUTPUT_PREVIEW | Max characters of tool-output preview | 300 |
HTTP Client
| Variable | Description | Default |
|---|---|---|
INFINIUM_TIMEOUT | Request timeout in seconds | 30.0 |
INFINIUM_MAX_RETRIES | Max retry attempts | 3 |
INFINIUM_VERIFY_SSL | Verify SSL certificates | true |
CI/Docker Example
export INFINIUM_AGENT_ID="your-agent-id"
export INFINIUM_AGENT_SECRET="your-agent-secret"
# Non-interactive setup
infinium-cline init \
--agent-id "$INFINIUM_AGENT_ID" \
--agent-secret "$INFINIUM_AGENT_SECRET" \
--no-interactive
Uninstall
Completely remove the connector:
infinium-cline uninstall
This removes:
- Infinium hook scripts from
.clinerules/hooks/ - The
.clinerules/hooks/and.clinerules/directories if they become empty - Credentials (config file + keyring secret)
To skip the confirmation prompt:
infinium-cline uninstall -y
You can reinstall at any time with pip install infinium-cline-connector and infinium-cline init.