Use these profiles as starting points. Copy the YAML into .aislop/config.yml, then adjust thresholds and weights for your project.
Strict TypeScript project
Tight thresholds for teams that want a high bar in production TypeScript code.
# .aislop/config.yml
version: 1
engines:
format: true
lint: true
code-quality: true
ai-slop: true
architecture: false
security: true
quality:
maxFunctionLoc: 60
maxFileLoc: 300
maxNesting: 4
maxParams: 4
scoring:
weights:
format: 1.0
lint: 1.5
code-quality: 2.0
ai-slop: 1.5
architecture: 1.0
security: 2.0
thresholds:
good: 85
ok: 65
ci:
failBelow: 75
format: json
Relaxed monorepo
Looser thresholds for large codebases or teams adopting aislop incrementally.
# .aislop/config.yml
version: 1
engines:
format: true
lint: true
code-quality: true
ai-slop: true
architecture: false
security: true
quality:
maxFunctionLoc: 120
maxFileLoc: 600
maxNesting: 6
maxParams: 8
scoring:
weights:
format: 0.5
lint: 1.0
code-quality: 1.0
ai-slop: 0.5
architecture: 1.0
security: 2.0
thresholds:
good: 70
ok: 40
ci:
failBelow: 0
format: json
failBelow: 0 makes CI report the score without blocking. Raise it once the team is ready to enforce the gate.
Python and Go backend
Backend-oriented defaults with a stronger security weight and a longer dependency-audit timeout.
# .aislop/config.yml
version: 1
engines:
format: true
lint: true
code-quality: true
ai-slop: true
architecture: false
security: true
quality:
maxFunctionLoc: 80
maxFileLoc: 500
maxNesting: 5
maxParams: 6
security:
audit: true
auditTimeout: 30000
scoring:
weights:
format: 0.5
lint: 1.0
code-quality: 1.5
ai-slop: 1.0
architecture: 1.0
security: 2.5
thresholds:
good: 75
ok: 50
ci:
failBelow: 60
format: json
Architecture rules file
Architecture rules live in .aislop/rules.yml, not .aislop/config.yml. Enable the architecture engine before adding this file.
# .aislop/config.yml
engines:
architecture: true
# .aislop/rules.yml
rules:
- type: forbid_import
module: "axios"
message: "Use the shared httpClient instead of importing axios directly"
- type: forbid_import_from_path
from: "src/controllers/**"
module: "src/database/**"
message: "Controllers must go through the service layer"
- type: require_pattern
path: "src/routes/**"
pattern: "catch"
message: "API routes must include error handling"
Validate after editing
Run:
aislop doctor
aislop scan --json
doctor confirms available engine tooling. scan --json confirms the config loads and shows exactly which findings and score the profile produces.