Collection Init & Configuration¶
Get your SkillMeat collection set up and configured for your needs. This guide covers initializing a new collection, configuring settings, and verifying your setup works properly.
Overview¶
A SkillMeat Collection is your personal library of artifacts—skills, commands, agents, MCP servers, and other Claude Code tools. Collections:
- Store your artifacts locally on your machine
- Sync with GitHub sources for version control
- Deploy artifacts to your projects (
.claude/directories) - Support both single-user and team deployments
When to initialize: - First time installing SkillMeat - Creating a new collection for a different use case (e.g., work vs. personal) - Setting up SkillMeat on a new machine
Configuration includes: - GitHub authentication for private repos and higher rate limits - Default collection selection - Web UI preferences - Collection refresh and sync settings
Prerequisites¶
Required: - SkillMeat installed via pip, uv, or pipx (see Quickstart Guide) - Python 3.9+
Optional but recommended: - GitHub account with a personal access token (for private repos and higher rate limits) - Node.js 18+ if you plan to use the web UI
Zero-Auth Local Mode
SkillMeat runs in zero-auth local mode by default — no authentication required. For team or production setups, see Authentication Setup.
Walkthrough available
See the New Project Developer Walkthrough for a complete setup journey using this guide.
Initialize Your Collection¶
A collection is initialized with default settings and an empty artifact store. Choose the method that matches your workflow.
Create Default Collection¶
Initialize a collection named default:
Output:
Automatic Activation
The collection is now ready to use. Your first collection is automatically set as active.
Create Named Collection¶
Initialize a collection with a custom name:
Output:
Use custom collections for different contexts (work, personal, experiments, etc.).
Specify Custom Location¶
Store the collection in a non-default directory:
Useful if you: - Share a machine and want isolated collections - Store collections on a mounted network drive - Use a specific backup location
Create with GitHub Configuration¶
Initialize and configure GitHub auth at the same time:
See GitHub Authentication Guide for how to create a token.
Start the Web Server¶
Launch the SkillMeat web interface:
Output:
Open http://localhost:3000 in your browser.
Initialization Flow¶
- Landing page — If no collection exists, you'll see the initialization prompt
- Create collection — Click "Create Collection" and enter:
- Collection name (default:
default) - Location (auto-calculated, but you can customize)
- Configure GitHub (optional) — Provide GitHub token if you plan to import from private repos
- Complete — Collection is created and you're redirected to the dashboard
Managing Collections in Web UI¶
- Open Settings → Collections
- View all your collections with their artifact counts
- Click + Create New to create additional collections
- Use the collection dropdown to switch active collections
Configure Your Collection¶
After initialization, configure settings for your workflow.
Set GitHub Token¶
Enable private repository access and increase rate limits:
To create a token:
1. Go to GitHub → Settings → Developer settings → Personal access tokens → Tokens (classic)
2. Click "Generate new token"
3. Select scopes: repo (full control of private repos), read:user, read:org
4. Click "Generate token" and copy it immediately
5. Run the command above
Verify:
Set Default Collection¶
Choose which collection is active when you run commands:
Now commands default to your work collection unless you specify otherwise:
skillmeat list
# Lists artifacts from 'work' collection
skillmeat list --collection personal
# Override with different collection
Verify:
Set Collection Paths¶
Configure where SkillMeat stores collections:
New collections will be created in this directory. Existing collections remain in their current location.
View All Configuration¶
List all your settings:
Output:
Configuration Settings
Key Value
─────────────────────────────────────────
github-token ghp_xxxx...xxxx
default-collection work
collection-path /home/user/.skillmeat
cache-enabled true
sync-on-startup true
Get Single Setting¶
Check a specific configuration value:
Unset Configuration¶
Remove a setting to use defaults:
Access Settings¶
- Click Settings in the top navigation bar
- Select Collection Configuration
GitHub Token¶
- Under "GitHub Authentication", click Add Token
- Paste your personal access token
- Click Save
The UI will verify the token and show: - ✓ Token valid - Your GitHub username - Current rate limit status
To remove the token: - Click Remove next to the token entry
Set Default Collection¶
- Under "Active Collection", select your collection from the dropdown
- Changes save automatically
- This collection is used for all web operations
Collection Details¶
View information about each collection:
- Go to Collections tab
- Each collection card shows:
- Collection name
- Location on disk
- Total artifact count
- Last modified date
- Click a collection to see detailed settings
Sync & Refresh Settings¶
- Under "Advanced Options", configure:
- Auto-refresh on startup — Check for upstream changes
- Sync interval — How often to check for updates
- Dry-run mode — Preview changes before applying
- Click Save to apply
Preferences¶
Customize your collection experience:
- Artifact sorting — By name, type, date, or custom
- Default view — List, grid, or tree view
- Notifications — Alert on update available or conflicts
Verify Your Setup¶
After initialization and configuration, verify everything works correctly.
List Your Collection¶
View what's in your collection:
Output (empty collection):
Output (populated collection):
Artifacts (3)
┌──────────────┬──────────┬────────┐
│ Name │ Type │ Origin │
├──────────────┼──────────┼────────┤
│ canvas │ skill │ github │
│ python-tools │ command │ github │
│ code-review │ agent │ local │
└──────────────┴──────────┴────────┘
Check GitHub Configuration¶
Verify your GitHub token is valid and working:
Should show a masked token like: ghp_xxxx...xxxx
Test by adding an artifact from GitHub:
If the token is valid, this shows what would be added without error.
View Collection Info¶
Get detailed information about your active collection:
Output:
Collection: default
Location: /home/user/.skillmeat/collections/default
Total artifacts: 3
Total size: 2.4 MB
Last modified: 2026-04-20 10:30:00
Last synced: 2026-04-20 10:15:00
Test Web Interface (Optional)¶
Start the web UI to verify everything connects:
Visit http://localhost:3000 and verify: - Dashboard loads without errors - Your collection appears in the sidebar - Artifact list matches CLI output
Keyboard shortcut to stop:
- Press Ctrl+C in the terminal
Navigate to Collection¶
- Open http://localhost:3000 (if not already running, start with
skillmeat web dev) - You'll land on the Dashboard
- The left sidebar shows your active collection name
View Your Artifacts¶
- Click Artifacts in the left navigation
- Browse your collection:
- Search bar at top to find artifacts
- Filter by type (skill, command, agent, etc.)
- Sort by name, date created, or date modified
- Click any artifact to view details
Test GitHub Configuration¶
- Go to Settings → GitHub Authentication
- Verify token is configured:
- ✓ Token valid (green checkmark)
- Username displayed
- Rate limit shown
- If not configured or invalid, reconfigure following the Web UI section above
Verify Settings¶
- Go to Settings → Collection Configuration
- Check that:
- Active collection is set correctly
- All preferences are as expected
- GitHub token is configured (if needed)
- Click Test Connection if available to verify setup
Inspect a Snapshot¶
Collections automatically create snapshots. To verify this is working:
- Go to Settings → Snapshots
- You should see at least one snapshot (from initialization)
- Each snapshot shows:
- Timestamp created
- Artifact count at that time
- Custom message (if provided)
Common Configuration Scenarios¶
Scenario 1: Single User, Local Development¶
Goal: Set up SkillMeat for personal use on one machine
# Initialize with defaults
skillmeat init
# Set GitHub token for importing private skills
skillmeat config set github-token ghp_your_token
# Verify
skillmeat list
skillmeat config get github-token
Result: Ready to add artifacts from GitHub and your projects
Scenario 2: Multiple Collections for Different Contexts¶
Goal: Separate work artifacts from personal experiments
# Create work collection
skillmeat init --name work --github-token ghp_work_token
# Create personal collection
skillmeat init --name personal
# Switch between them
skillmeat config set default-collection work
skillmeat list # Shows work artifacts
skillmeat config set default-collection personal
skillmeat list # Shows personal artifacts
Result: Each collection maintains separate artifacts and settings
Scenario 3: Shared Machine with Isolated Collections¶
Goal: Each user on the machine has their own collection
# User Alice
skillmeat init --path /home/alice/.skillmeat/alice-collection --name alice
# User Bob
skillmeat init --path /home/bob/.skillmeat/bob-collection --name bob
# Each can configure independently without interfering
Result: Users don't see each other's artifacts
Scenario 4: Backup and Restore¶
Goal: Protect against accidental changes
# Create a snapshot before major changes
skillmeat snapshot "Before cleanup"
# If something goes wrong
skillmeat history # List snapshots
skillmeat rollback <snapshot-id> # Restore to snapshot
Result: Easy recovery from mistakes
Scenario 5: Team Deployment Setup¶
Goal: Set up for enterprise or team collaboration
# Initialize collection
skillmeat init
# Configure enterprise authentication
skillmeat config set enterprise-token <token>
# Configure team access
skillmeat config set team-id <team-id>
# Verify authentication works
skillmeat config get enterprise-token
Result: Ready for team deployments (see Server Setup for full enterprise configuration)
Troubleshooting¶
Collection already exists¶
Problem: Running skillmeat init fails with "Collection already exists"
Solution:
# List your collections
skillmeat collection list
# Use existing collection
skillmeat config set default-collection <existing-name>
# Or delete old collection if you want fresh start (careful!)
skillmeat collection delete <old-name>
# Then initialize
skillmeat init
GitHub token not working¶
Problem: Getting rate limit errors or "authentication failed" when adding artifacts
Solution:
# Verify token is set
skillmeat config get github-token
# Check token is valid by testing with explicit token
skillmeat add skill anthropics/skills/canvas --github-token ghp_newtoken
# If new token works, update config
skillmeat config set github-token ghp_newtoken
# If still failing, check token has right permissions:
# - Needs 'repo' scope (full control of private repos)
# - Needs 'read:user' and 'read:org' scopes
Also check:
- Token hasn't expired (regenerate in GitHub settings)
- Token hasn't been revoked
- Repository still exists and is accessible
- Rate limit hasn't been exceeded (check with skillmeat config get)
See GitHub Authentication Guide for detailed troubleshooting.
Web UI won't start¶
Problem: skillmeat web dev fails or UI doesn't load
Solution:
# Check Node.js is installed
node --version # Should be 18+
# Try starting with different ports
skillmeat web dev --port 4000
# Check if ports are in use
lsof -i :3000 # Check if 3000 in use
lsof -i :8080 # Check if 8080 in use
# Kill processes using those ports and retry
If still failing:
# Run diagnostics
skillmeat web doctor
# This shows:
# - Node.js version
# - Python version
# - Available ports
# - Database connectivity
# - Git configuration
Collection path permission denied¶
Problem: Error when initializing at custom path (permission denied)
Solution:
# Check directory permissions
ls -la /custom/path
# Ensure you own the directory
sudo chown -R $(whoami) /custom/path
# Or use a directory you definitely own
skillmeat init --path ~/my-collections/default
Settings not persisting¶
Problem: Configuration changes disappear after restart
Solution:
# Verify settings are actually saved
skillmeat config list
# Check config file exists
cat ~/.skillmeat/config.toml
# If config.toml is empty or missing, reconfigure
skillmeat config set default-collection work
skillmeat config set github-token ghp_token
# Restart terminal/shell and verify
skillmeat config list
Next Steps¶
Now that your collection is initialized and configured:
- Adding Artifacts — Start importing artifacts from GitHub or local paths
- Deploying Artifacts — Deploy artifacts to your projects
- Web UI Guide — Learn the visual interface for managing collections
- Authentication Setup — Configure auth for team or production use
- GitHub Authentication Guide — Token setup and troubleshooting
For Team Deployments¶
If you're setting up for a team or organization:
- Server Setup Guide — Database configuration and production deployment
- Authentication Setup — Enable Clerk JWT or enterprise PAT
- Enterprise Admin Guide — Governance, bulk actions, activity monitoring
- Container Deployment — Deploy SkillMeat with Docker
See Also¶
- Quickstart Guide — 5-minute setup overview
- CLI Commands Reference — All available commands with examples
- Web UI Guide — Navigating the visual interface
- GitHub Authentication Guide — Token creation and troubleshooting