Skip to content

Profile Management

Profile management in Rawi allows you to maintain different configurations for various projects, AI providers, and use cases. Each profile can have its own provider, model, API keys, and settings.

Profiles are named configurations that contain:

  • AI provider settings (OpenAI, Anthropic, etc.)
  • Model selection and parameters
  • API keys and endpoints
  • Default templates and preferences
  • Custom settings for specific use cases
Terminal window
# List all profiles
rawi configure --list
# Show current active profile
rawi configure --show
# Show specific profile details
rawi configure --profile work --show
Terminal window
# Create a new profile interactively
rawi configure --profile work
# Create profile with specific settings
rawi configure --profile personal \
--provider openai \
--model gpt-4 \
--api-key sk-your-personal-key
# Create profile for local AI
rawi configure --profile local \
--provider ollama \
--model llama2 \
--base-url http://localhost:11434
Terminal window
# Use specific profile for a question
rawi ask --profile work "How do I optimize this database query?"
# Switch default profile
rawi configure --profile personal --set-default
# Use profile with other features
rawi ask --profile work --act code-reviewer "Review this code"

Work Profile (Enterprise/Secure):

Terminal window
rawi configure --profile work \
--provider azure \
--model gpt-4 \
--api-key your-work-key \
--base-url https://company.openai.azure.com \
--temperature 0.1

Personal Profile (Flexible):

Terminal window
rawi configure --profile personal \
--provider openai \
--model gpt-4 \
--api-key your-personal-key \
--temperature 0.7

OpenAI Profile:

Terminal window
rawi configure --profile openai-pro \
--provider openai \
--model gpt-4 \
--temperature 0.5 \
--max-tokens 2000

Anthropic Profile:

Terminal window
rawi configure --profile claude \
--provider anthropic \
--model claude-3-5-sonnet-20241022 \
--temperature 0.3

Local AI Profile:

Terminal window
rawi configure --profile offline \
--provider ollama \
--model codellama \
--base-url http://localhost:11434

Code Review Profile:

Terminal window
rawi configure --profile code-review \
--provider anthropic \
--model claude-3-5-sonnet-20241022 \
--temperature 0.1 \
--default-act code-reviewer

Creative Writing Profile:

Terminal window
rawi configure --profile creative \
--provider openai \
--model gpt-4 \
--temperature 0.9 \
--default-act creative-writer

Data Analysis Profile:

Terminal window
rawi configure --profile data \
--provider openai \
--model gpt-4 \
--temperature 0.2 \
--default-act data-scientist
Terminal window
# Set profile-specific settings
rawi configure --profile work \
--temperature 0.1 \
--max-tokens 1500 \
--timeout 30 \
--retry-count 3
# Configure profile defaults
rawi configure --profile work \
--default-act software-engineer \
--auto-session true \
--verbose false

Development Environment:

Terminal window
rawi configure --profile dev \
--provider ollama \
--model codellama \
--temperature 0.3

Production Environment:

Terminal window
rawi configure --profile prod \
--provider azure \
--model gpt-4 \
--temperature 0.1 \
--max-tokens 1000

Testing Environment:

Terminal window
rawi configure --profile test \
--provider openai \
--model gpt-3.5-turbo \
--temperature 0.2
Terminal window
# Web development project
rawi ask --profile web-dev "How do I implement SSR in Next.js?"
# Mobile development project
rawi ask --profile mobile "Best practices for React Native navigation?"
# Data science project
rawi ask --profile data-science "How do I visualize this dataset?"
Terminal window
# Shared team profile (same settings for consistency)
rawi configure --profile team-standard \
--provider azure \
--model gpt-4 \
--temperature 0.3 \
--max-tokens 1500
# Individual customization
rawi configure --profile john-personal \
--provider openai \
--model gpt-4 \
--temperature 0.7

Premium Profile (High-quality, higher cost):

Terminal window
rawi configure --profile premium \
--provider openai \
--model gpt-4 \
--max-tokens 4000

Budget Profile (Good quality, lower cost):

Terminal window
rawi configure --profile budget \
--provider openai \
--model gpt-3.5-turbo \
--max-tokens 1000

Free Profile (Local, no API costs):

Terminal window
rawi configure --profile free \
--provider ollama \
--model llama2

Use clear, descriptive names:

Terminal window
# Good naming
work-azure
personal-openai
local-development
code-review-claude
# Avoid generic names
profile1
test
temp
Terminal window
# Separate work and personal
rawi configure --profile work-openai
rawi configure --profile personal-claude
# Separate by project
rawi configure --profile project-alpha
rawi configure --profile project-beta

Set up multiple providers for reliability:

Terminal window
# Primary provider
rawi configure --profile main --provider openai
# Backup provider
rawi configure --profile backup --provider anthropic
# Local fallback
rawi configure --profile local --provider ollama
Terminal window
# Use environment variables for sensitive keys
export OPENAI_API_KEY="sk-your-key"
rawi configure --profile secure --provider openai --api-key "$OPENAI_API_KEY"
# Separate profiles for different security levels
rawi configure --profile public-demos --provider ollama # No API keys
rawi configure --profile internal --provider azure # Company keys

Profiles are stored in:

  • Linux/macOS: ~/.config/rawi/profiles/
  • Windows: %APPDATA%/rawi/profiles/
Terminal window
# Edit profile configuration directly
nano ~/.config/rawi/profiles/work.json
# Copy profile configuration
cp ~/.config/rawi/profiles/work.json ~/.config/rawi/profiles/work-backup.json
Terminal window
# Export profile settings
rawi configure --profile work --export > work-profile.json
# Import profile settings
rawi configure --profile new-work --import work-profile.json
# Share team profile
rawi configure --profile team --export | base64 # Share encoded config

Profile not found:

Terminal window
# List available profiles
rawi configure --list

Profile authentication errors:

Terminal window
# Check profile configuration
rawi configure --profile work --show
rawi configure --profile work --test-connection

Profile conflicts:

Terminal window
# Reset profile to defaults
rawi configure --profile work --reset
# Delete problematic profile
rawi configure --profile old-profile --delete
Terminal window
# Test profile configuration
rawi configure --profile work --validate
# Check API connectivity
rawi ask --profile work "test connection"
# Verify model availability
rawi provider --models openai
Terminal window
# Start work session with work profile
rawi ask --profile work --new-session "Starting the API refactoring project"
# Continue with same profile and session
rawi ask --profile work --session abc123 "How do we handle data migration?"
Terminal window
# Code review with specific profile
rawi ask --profile claude-code --act code-reviewer "Review this function"
# Technical writing with creative profile
rawi ask --profile creative --act technical-writer "Write user documentation"
Terminal window
# Analyze logs with data profile
tail -f app.log | rawi ask --profile data-analysis "Summarize errors"
# Code review with work profile
cat src/app.js | rawi ask --profile work --act code-reviewer "Review this"
#!/bin/bash
# Daily standup helper
rawi ask --profile work --new-session "Generate standup report for $(date +%Y-%m-%d)"
#!/bin/bash
# Code review automation
for file in src/*.js; do
echo "Reviewing $file..."
cat "$file" | rawi ask --profile code-review --act code-reviewer "Review this file"
done
#!/bin/bash
# Auto-select profile based on directory
if [[ $PWD == *"/work/"* ]]; then
PROFILE="work"
elif [[ $PWD == *"/personal/"* ]]; then
PROFILE="personal"
else
PROFILE="default"
fi
rawi ask --profile "$PROFILE" "$@"