Configuration File Location
Grip stores its configuration in~/.grip/config.json. This file is created automatically during onboarding and can be edited manually or via the grip config CLI.
Configuration Precedence
Configuration values are loaded in the following order (later sources override earlier ones):- Default values - Built-in defaults from schema
- Config file -
~/.grip/config.json - Environment variables -
GRIP_*prefixed variables
Environment Variable Overrides
All configuration options can be overridden using environment variables with theGRIP_ prefix and double underscores (__) for nested keys:
Environment variables use
__ (double underscore) to represent nested object paths. For example, GRIP_AGENTS__DEFAULTS__MODEL maps to config.agents.defaults.model in JSON.Using the CLI
Thegrip config command provides an interactive interface to view and modify configuration:
Configuration Structure
The configuration file has the following top-level sections:Agent Configuration
Default settings, profiles, and model tiers
Provider Setup
API keys for LLM providers
Tool Settings
Web search, shell timeout, MCP servers
Security
Trust model, deny-lists, credential scrubbing
Configuration Validation
Grip validates the configuration file on startup using Pydantic schemas. If validation fails, you’ll see detailed error messages indicating which fields are invalid:Workspace Directory
The workspace directory (agents.defaults.workspace) contains:
- Session history - Conversation transcripts and memory
- Identity files - AGENT.md, IDENTITY.md, SOUL.md, USER.md, SHIELD.md
- Tool outputs - Generated files, artifacts
- State - Trusted directories, token tracking
~/.grip/workspace
Platform Detection
Grip automatically detects your platform on startup:Operating system:
darwin, linux, or windowsCPU architecture:
arm64, x86_64, etc.Python version running Grip
open vs xdg-open).
Next Steps
Configure Agents
Set default model, temperature, and memory settings
Add Providers
Connect to OpenRouter, Anthropic, OpenAI, and more