Skip to content

Deploying Team Training

Get every teammate's AI automatically applying the same SQL conventions, naming standards, and anti-pattern rules. Achieved by committing .altimate-code/memory/ to git so that teammates inherit your training on git pull.


Step 1: Create Your First Team Training Entries

Use the /teach or /train skills to save project-specific conventions:

/teach always use QUALIFY instead of nested window function subqueries in Snowflake SQL
/teach our staging models follow the pattern: stg_<source>__<entity>.sql

Verify the training was saved:

/training-status

This shows all active training entries, their scope (global vs project), and when they were added.


Step 2: Locate the Training Files

Training is stored in .altimate-code/memory/ in your project root. Each entry is a markdown file with YAML frontmatter:

.altimate-code/
  memory/
    sql-conventions.md
    naming-standards.md
    project-patterns.md

Global vs. project scope: - Project scope (.altimate-code/memory/): Applies when working in this project. Commit to git to share with team. - Global scope (~/.altimate-code/memory/): Applies across all projects. Do not commit, as this is personal.


Step 3: Commit to Git

git add .altimate-code/memory/
git commit -m "Add team SQL conventions and naming standards"
git push

Teammates who git pull automatically inherit all training entries. No additional setup is required because the tool reads from .altimate-code/memory/ on startup.


Step 4: Verify a Teammate Got the Training

After a teammate pulls, they can run:

/training-status

They should see the same entries you created. If they don't, check that .altimate-code/memory/ is not in .gitignore.


Best Practices

What to teach first: 1. Your team's most common SQL mistakes (the things that keep coming up in code review) 2. Naming conventions for models, tables, and columns 3. Project-specific patterns: your medallion layer names, your warehouse, your dbt project structure

Handling conflicting corrections: Later corrections override earlier ones for the same topic. Use /training-status to audit and delete stale entries with /forget <entry-id>.

Global vs. project scope: Use project scope for team standards. Use global scope only for personal preferences that apply to all your projects (e.g., preferred SQL style).


Limitations

Training is as good as the corrections you save. The system doesn't infer conventions from your existing codebase; you teach it explicitly. For the full description of how training works, see Training Overview.