task icon Task

Setup Attio Connection

Build your Attio profile - discover attributes, linked objects, and data patterns
1
instruction icon Ask the user two quick questions: 1. "How do you use Attio in 1-2 sentences? For example: 'We track sales leads through a pipeline' or 'We manage inbound demo requests'" 2. "What field determines if a person is active or relevant to you? (e.g., 'status', 'stage', 'pipeline_status') - or say 'skip' if you're not sure" Wait for their answers before proceeding.
2
instruction icon Based on the user's answers, determine: - Their usage context (store this for the profile) - The focus field slug if provided (convert to snake_case, e.g., "Sauna Status" → "sauna_status") Run the analyze code with the focus field (or empty string if skipped).
4
instruction icon Read the analysis from uiAttio Analysis and create a profile at uiConnection Profiles. Structure the profile like this: # Attio Profile ## How You Use Attio Include the user's description of how they use Attio. This context helps with future queries. ## Key Field If the user provided a focus field, note it here as their primary way of tracking status/relevance. ## People Attributes List attributes sorted by population. Format as a table: | Attribute | Type | Population | Focus on attributes with >10% population. Note any record-reference types and what they link to. ## Linked Objects List the record-reference attributes and their target objects (e.g., "company → companies"). Note the population percentage for each link. ## Data Patterns - Total sample size analyzed - Top job titles if available - Number of unique companies linked ## Quick Reference List the most useful attributes for filtering (those with high population).
5
instruction icon Present a brief summary to the user: how many attributes found, which are most populated, what objects are linked. Ask if they want to start querying their people.
                  You MUST use a todo list to complete these steps in order. Never move on to one step if you haven't completed the previous step. If you have multiple read steps in a row, read them all at once (in parallel).

Add all steps to your todo list now and begin executing.

## Steps

1. Ask the user two quick questions:
1. "How do you use Attio in 1-2 sentences? For example: 'We track sales leads through a pipeline' or 'We manage inbound demo requests'"
2. "What field determines if a person is active or relevant to you? (e.g., 'status', 'stage', 'pipeline_status') - or say 'skip' if you're not sure"

Wait for their answers before proceeding.


2. Based on the user's answers, determine:
- Their usage context (store this for the profile)
- The focus field slug if provided (convert to snake_case, e.g., "Sauna Status" → "sauna_status")

Run the analyze code with the focus field (or empty string if skipped).


3. [Gather Arguments: Analyze Attio Workspace] The next step has the following requirements for arguments, do not proceed until you have all the required information:
- `outputPath` (default: "session/attio-analysis.json"): ui:session.attio.analysis
- `focusField`: Focus field slug from user (or empty string)

4. [Run Code: Analyze Attio Workspace]: Call `run_script` with:

```json
{
  "file": {
    "path": https://sk.ills.app/code/crm.attio.analyze/preview,
    "args": [
      "outputPath",
      "focusField"
    ]
  },
  "packages": null
}
```

5. Read the analysis from `./documents/session/attio-analysis.json` and create a profile at `./documents/connections/[service-name].md`.

Structure the profile like this:

# Attio Profile

## How You Use Attio
Include the user's description of how they use Attio. This context helps with future queries.

## Key Field
If the user provided a focus field, note it here as their primary way of tracking status/relevance.

## People Attributes
List attributes sorted by population. Format as a table:
| Attribute | Type | Population |
Focus on attributes with >10% population. Note any record-reference types and what they link to.

## Linked Objects
List the record-reference attributes and their target objects (e.g., "company → companies").
Note the population percentage for each link.

## Data Patterns
- Total sample size analyzed
- Top job titles if available
- Number of unique companies linked

## Quick Reference
List the most useful attributes for filtering (those with high population).


6. Present a brief summary to the user: how many attributes found, which are most populated, what objects are linked. Ask if they want to start querying their people.