Skip to content

Project Configuration

You can add a .scc.yaml file to your repository root to customize SCC settings for that specific project.

Use .scc.yaml when you need:

  • Project-specific plugins
  • Project-specific MCP servers
  • Custom session timeouts (auto_resume is advisory)
  • Directorymy-project/
    • .scc.yaml ← Project config
    • Directory.git/
    • Directorysrc/
    • package.json
.scc.yaml
# Add plugins specific to this project
additional_plugins:
- "eslint-plugin@internal"
- "project-linter@team-marketplace"
# Optional MCP servers for this project
additional_mcp_servers:
- name: "project-api"
type: "sse"
url: "https://api.example.com/mcp"
# Override session settings
session:
timeout_hours: 4

Add plugins beyond what your team provides:

additional_plugins:
- "plugin-name@marketplace"
- "another-plugin@marketplace"

Override session behavior:

session:
timeout_hours: 4 # Override team default
auto_resume: false # Advisory only in v1

Add MCP servers scoped to this project:

additional_mcp_servers:
- name: project-api
type: sse
url: https://api.example.com/mcp
.scc.yaml
# Add React-specific tooling
additional_plugins:
- "react-tools@frontend-marketplace"
session:
timeout_hours: 8
.scc.yaml
# Short sessions for sensitive work
session:
timeout_hours: 2
auto_resume: false
.scc.yaml
# Longer sessions for training runs
session:
timeout_hours: 24
# Add data science plugins
additional_plugins:
- "jupyter-helper@ml-marketplace"
- "pandas-tools@ml-marketplace"

Validate your project config:

Terminal window
scc config validate

This checks:

  • YAML syntax is correct
  • Referenced plugins/MCP servers are allowed
  • Project delegation rules are satisfied
  • Selected team exists in org config
  • Unknown keys are reported (ignored at runtime)

To see how project config combines with team and org settings:

Terminal window
scc config explain

Output shows the source of each setting:

Effective configuration for ~/project:
plugins:
- scc-safety-net (from: team/backend)
- code-formatter (from: team/backend)
- eslint-plugin (from: project/.scc.yaml) ← Project addition
session:
timeout_hours: 4 (from: project/.scc.yaml) ← Project override
auto_resume: true (from: team/backend, advisory)
network_policy: corp-proxy-only (from: org/defaults)

Project config cannot:

  • Remove team default plugins
  • Unblock organization-blocked plugins
  • Override network policy (projects cannot set it; teams can only tighten org defaults)
  • Bypass security settings

The .scc.yaml file should typically be committed to your repository so all team members get the same project settings.

Local-only overrides are not supported in v1. Use personal profiles for machine-specific plugins or MCP servers.

If you want your own plugins or MCP servers without committing anything to the repo, use personal profiles.

Terminal window
scc profile save
scc profile apply

Personal profiles live outside the repo and can be synced across machines. See Personal Profiles for details.

Your team’s delegation rules don’t permit that plugin. Check with your team lead.

Terminal window
scc config explain --field denied

Your selected team no longer exists in the org config. Pick a valid team:

Terminal window
scc team list
scc team switch <team>

Project config is read at session start. Restart your session:

Terminal window
scc stop
scc start --fresh