CertSafari
    Databricks Certified Context Engineer Associate· Lessons

    Domain 5 · Lesson 34/45

    Agent Skills loading strategies: load once, download, or load live

    Given a Databricks agent whose system prompt is overloaded with rarely-invoked capability instructions, identify which capabilities are candidates for packaging as Agent Skills and select the loading strategy that minimizes baseline context cost without harming task success rate.

    11 min read
    2.17% of exam
    4 sources
    Published 3 Oct 2026
    Docs as of 30 Sep 2026

    What you will be able to do

    • Compare the three ways to use a Unity Gateway skill: load once, download, and load a schema live
    • Choose the loading strategy that keeps baseline context low while the skill stays reachable and current
    • Spot the limits of each strategy: point-in-time copies, schema-only live loading, and stale edits

    1.Three ways to load a skill

    After a capability has been packaged as a skill and published to Unity Catalog, you still have to decide how the agent gets it. The Unity Gateway CLI (ug) signs you in to your workspace and registers the Databricks Skills MCP server, databricks-skill-registry. Your agent uses that server to list, load and download skills. Broadly, you either download a skill to disk so it loads every session, or load it live from the Skills MCP server. The tutorial splits this into three options.

    The three Unity Gateway skill-loading options
    OptionPersists across sessionsFreshnessBest for
    Load onceNo, nothing is savedCurrent at load timeA one-off
    Download (ug skills add --names / --location)Yes, loads automatically each session; works offlinePoint-in-time copy; re-download for updatesThe handful you use daily
    Load schema live (ug skills add --location ... --via mcp)Yes, through the MCP connection; nothing stored locallyAlways the latest published versionA big, fast-changing set; needs a connection

    Map each option back to the overloaded prompt, starting with what each one does to the agent's context.

    - Load once leaves later sessions untouched, because nothing is saved. But the skill only arrives when someone asks for it by name, as in "Use acme.sql_skills.databricks-sql-guide to review this query." A capability the agent must pick up on its own can be missed. - Download loads the skill every session, used or not. That is why it suits only the handful you use daily. - Live loading exposes every skill in the schema as a tool. The agent loads a skill's instructions on demand when a task matches its description, which is why a specific description matters.

    The Genie Code docs describe the same principle: unlike custom instructions, which apply globally, skills load only in the relevant context, which keeps the context window efficient. So for a rarely used capability that must still be reachable when a matching task appears, a description-matched skill, for example through live loading, keeps it available without loading it every session. Persistence, freshness and connectivity then separate the remaining options.

    Checkpoint 1 of 6· Match them up

    Match each situation to the loading option the tutorial recommends

    Tap a term, then the definition that fits it.

    Sources12

    2.How live loading works, and where it stops

    Scope the Skills MCP server to a whole schema so its skills load livebash
    ug skills add --location acme.sql_skills --via mcp

    After you restart the agent, every skill in acme.sql_skills shows up as a live tool named skill_acme.sql_skills.<skill>. When a task matches a skill's description, the agent loads that skill on demand. When a new version is published, everyone on the connection gets it straight away.

    The catch is granularity. Live loading covers a whole schema at a time, and you cannot scope it to a single skill. To use one skill without exposing its entire schema, load that skill once instead. So which skills sit together in a schema decides which skills a live connection exposes as tools.

    Behind all of this, the registry server provides three tools: list_skills, load_skill and get_skill_files. When a skill is loaded, its instructions are pulled into context. Bundled files are fetched separately, and only when they are needed.

    Checkpoint 2 of 6· Match them up

    Match each databricks-skill-registry tool to its purpose

    Tap a term, then the definition that fits it.

    Checkpoint 3 of 6· Exam question

    After packaging a rarely-used log-analysis capability as an Agent Skill, the team notices the agent frequently fails to use it even when a user explicitly asks for log analysis. The Skill's body content is correct and complete. What is the most likely cause, and what should be fixed?

    Sources1

    3.Limits that affect the choice

    First, the skill-or-not judgement. Skills teach an agent one task well, such as following a runbook or applying your team's SQL conventions. Instructions needed on every request are different: custom instructions apply globally, while skills are loaded only in the relevant context. So a rarely invoked, task-specific block in an overloaded prompt is a skill candidate. A rule that applies to every request is not, and a skill you use daily is better downloaded than left to a one-off load.

    Each loading option also has an operational cost to weigh against what it saves.

    - Downloads go stale. A downloaded skill is a point-in-time copy. Re-run the same command to fetch updates; ug prompts before overwriting existing skill folders. - Live skills can be harder to see. Skills loaded through MCP might not appear in the agent's native skill menu. Users who expect to browse that menu may not find them. - Flags don't mix freely. You cannot combine --via mcp with --path or --names, because live loading is schema-scoped. - Edits need a fresh session. In Genie Code, edits to an existing skill do not take effect in active chats. Start a new chat to apply them. - Other agents may need a setting. ug configures live loading automatically for supported agents. Other agents may need their own "always load" setting turned on.

    Checkpoint 4 of 6· Fill the gap

    Which flag makes this command load the schema's skills live through MCP instead of downloading them?

    ug skills add --location acme.sql_skills  ?  mcp

    Checkpoint 5 of 6· Check yourself

    A colleague downloaded acme.sql_skills.databricks-sql-guide last month. The skill owner has since published a fix. Why does the colleague's agent still follow the old conventions?

    Sources23

    4.Access the agent needs

    Moving a capability out of the prompt only preserves task success if the agent can still reach it. To use a skill, a user needs USE CATALOG, USE SCHEMA and READ VOLUME, and they only ever see skills they have permission to use. A published skill stays private to its owner until READ VOLUME is granted, along with USE CATALOG and USE SCHEMA on the parents. Sharing is a grant, not a copy, so a recipient who loads the skill live is reading the governed original. Before you take a capability out of a shared agent's prompt, check that everyone who relied on it has access to the skill that replaces it.

    Checkpoint 6 of 6· Check yourself

    Which privileges does a user need to use a published Unity Gateway skill?

    Sources41

    Exam traps

    Each one states something that sounds right. Open it to see what is actually true.

    1. 1.You can live-load a single skill through MCP so that only that one skill is exposed.Why is that wrong?

      Live loading is scoped to a whole schema. To use one skill without exposing its schema, load it once instead.

      Covered in How live loading works, and where it stops

    2. 2.Downloaded skills pick up new published versions automatically.Why is that wrong?

      A download is a point-in-time copy. Re-run the command to fetch updates, or load the schema live.

      Covered in Limits that affect the choice

    Practise it for real

    Connect a coding agent to a Unity Catalog skills schema and try each loading option

    1. 1.Run: uv tool install git+https://github.com/databricks/unity-gateway, then ug configure --agents <your-agent> --workspaces https://<workspace-host>

      Why: This installs the Unity Gateway CLI and registers the databricks-skill-registry MCP server for your agent

      You should see: A browser opens so you can sign in

    2. 2.Restart the agent with ug <your-agent> and ask: List the Databricks skills in acme.sql_skills.

      Why: This checks discovery through the list_skills tool

      You should see: The agent reports only the skills you have permission to use

    3. 3.Ask: Use acme.sql_skills.databricks-sql-guide to review this query.

      Why: This is a one-off load that saves nothing for later sessions

      You should see: The agent calls load_skill, and get_skill_files if the skill bundles supporting files

    4. 4.Run: ug skills add --names acme.sql_skills.databricks-sql-guide, then restart the agent

      Why: This downloads a skill you use daily so it loads every session

      You should see: The skill folder appears under .claude/skills/ and .agents/skills/

    5. 5.Run: ug skills add --location acme.sql_skills --via mcp, then restart the agent

      Why: This exposes the whole schema live so you always get the latest version

      You should see: Each skill appears as a tool named skill_acme.sql_skills.<skill>

    Stuck? Get a nudge

    Replace acme.sql_skills with a schema you can actually access. Without USE CATALOG, USE SCHEMA and READ VOLUME, these commands fail with a permission error.

    Sources

    Every claim above is drawn from one of these pages, quoted as it was written on the date shown.

    1. 1.
      “download it to disk so it loads every session, or load it live from the Databricks Skills MCP server”
      ↩︎ Three ways to load a skill
      “Load a skill once: for this session only. Nothing is saved. Best for a one-off.”
      ↩︎ Three ways to load a skill
      “every skill in it is exposed as a live tool”
      ↩︎ Three ways to load a skill
      “When a task matches a skill's description, the agent loads it on demand”
      ↩︎ How live loading works, and where it stops
      “To use just one skill without loading its whole schema, load it for a one-off instead.”
      ↩︎ How live loading works, and where it stops
      “USE CATALOG, USE SCHEMA, and READ VOLUME on the skills you want to use.”
      ↩︎ Access the agent needs
      “Live loading works on a whole schema at a time. You can't scope it to a single skill.”
      ↩︎ Exam trap 1
      “Copies are point-in-time; re-download for updates.”
      ↩︎ Exam trap 2
      “Best for a big, fast-changing set, but needs a connection.”
      ↩︎ Prediction
      “Use acme.sql_skills.databricks-sql-guide to review this query.”
      ↩︎ Prediction
      “Downloads to disk so it loads automatically each session, and works offline. Best for the handful you use daily.”
      ↩︎ Checkpoint
      “The agent calls the load_skill MCP tool to load the skill's instructions into context, and get_skill_files if the skill bundles supporting files.”
      ↩︎ Checkpoint
      “A downloaded skill is a point-in-time copy. Re-run the download for a newer version, or load the schema live (below) to always get the latest.”
      ↩︎ Checkpoint
    2. 2.
      “Unlike custom instructions, which are applied globally, skills are loaded automatically and only in the relevant context.”
      ↩︎ Three ways to load a skill
      “Unlike custom instructions, which are applied globally, skills are loaded automatically and only in the relevant context.”
      ↩︎ Limits that affect the choice
      “When you edit an existing skill, start a new chat to apply your changes. Edits don't take effect in active chats.”
      ↩︎ Limits that affect the choice
    3. 3.
      “Skills loaded through MCP might not appear in the agent's native skill menu.”
      ↩︎ Limits that affect the choice
      “Re-run the same command to fetch updates; ug prompts before overwriting existing skill folders.”
      ↩︎ Limits that affect the choice
      “You cannot combine --via mcp with --path or --names.”
      ↩︎ Limits that affect the choice
    4. 4.
      “Sharing a skill is a grant, not a copy: the recipient's agent reads the live skill under your grants and audit”
      ↩︎ Access the agent needs

    Ready to test yourself?

    Practise Databricks Certified Context Engineer Associate in quiz mode.

    Spotted a mistake, or was something unclear? Tell us.