MUST be used whenever scaffolding a new Atlas agent project. Creates agent.yaml, README.md, and a starter eval/cases.yaml with the correct structure, tool definitions, and instructions. Do NOT manually write agent.yaml from scratch — this skill handles the full scaffold. Triggers: create agent, new agent, scaffold agent, agent project, agent template, cognite agents create.
68
85%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Scaffold a new Atlas agent project named $ARGUMENTS using npx @cognite/cli@latest agents create.
<agent-name>/
agent.yaml # Agent definition — externalId, model, instructions, tools
README.md # Quick-start docs and tool reference
eval/
cases.yaml # Starter eval cases (single-turn, multi-turn, correctness + faithfulness scorers)The agent name is $ARGUMENTS. Ask the user for the following (skip any they already provided):
| Field | CLI flag | Default |
|---|---|---|
| Display name | --display-name | same as agent name |
| Description | --description | — |
| Model | --model | azure/gpt-5.4-mini |
| Instructions (system prompt) | --instructions | see default below |
| Tools | (edit after creation) | none |
Default instructions when the user doesn't specify:
Help users explore and understand the data in this project.
Use the available tools to retrieve data before answering.
When the data is insufficient, say so rather than guessing.npx @cognite/cli@latest agents createRun the command, including only flags where the user provided a value or a non-empty default applies:
npx @cognite/cli@latest agents create <agent-name> \
--display-name "<display-name>" \
--description "<description>" \
--model <model> \
--instructions "<instructions>" \
--no-prompt--display-name if the user wants the default (same as agent name).--description if none was given.--instructions (use the default if the user didn't specify).--no-prompt to skip the CLI's interactive prompts.--instructions and edit agent.yaml manually after creation.If the user wants tools, edit <agent-name>/agent.yaml to add a tools array. Do NOT add tools: [] — omit the key entirely when there are no tools.
| Type | Purpose |
|---|---|
analyzeData | Analyze tabular or structured data |
analyzeImage | Analyze images and P&ID diagrams |
analyzeTimeSeries | Analyze time series data |
askDocument | Ask questions about documents |
callFunction | Call a Cognite Function |
callRestApi | Call an external REST API |
callWebhook | POST a payload to an external webhook |
examineDataSemantically | Semantic data examination |
query | Structured queries against CDF data models |
queryKnowledgeGraph | Query CDF data models with natural language |
queryTimeSeriesDatapoints | Fetch raw or aggregated time series data |
runPythonCode | Execute custom Python code |
summarizeDocument | Summarize documents |
timeSeriesAnalysis | Advanced time series analysis and anomaly detection |
tools:
- name: find_assets
type: queryKnowledgeGraph
description: Find assets and related instances in the knowledge graph.
configuration:
version: v2
dataModels:
- space: cdf_cdm
externalId: CogniteCore
version: v1
viewExternalIds:
- CogniteAsset
instanceSpaces:
type: allagent.yaml, README.md, and eval/cases.yaml were all created<agent-name>/agent.yaml — add tools and refine instructionsnpx @cognite/cli@latest agents push <externalId> — push to CDF for testingnpx @cognite/cli@latest agents open — open in Fusion<agent-name>/eval/cases.yaml and run npx @cognite/cli@latest agents eval <externalId> — the scaffolded cases are placeholders (a correctness case, a faithfulness case, and a multi-turn case); update the inputs, references, and context to match what the agent actually doestools: [] — omit the key entirely when there are no toolsc87160a
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.