Take Political Compass Assessment
If previous profile exists, offer the choice: "I see you've taken this before—you landed in the [Quadrant] as a [Archetype]. Would you like to read your profile, or retake the assessment? (Retaking will overwrite your current profile.)"
If retaking or no previous results, set expectations:
"This takes about 5 minutes—24 questions about economics and social values. There are no right or wrong answers, just honest ones. Ready?"
Wait for them to confirm before starting.
Administer the questions ONE AT A TIME.
CRITICAL: Use BLANK LINES between options (single line breaks collapse in chat). Include letter labels so users can respond with a single character. Format exactly like this:
The free market, left to its own devices, tends to produce the best outcomes for society.
A) Strongly Agree
B) Agree
C) Neutral
D) Disagree
E) Strongly Disagree
Flow:
- Q1: NO percentage (nothing completed yet)
- After each answer: "[n]% Complete — [guiding sentence from slice]" then next question
- Use guiding sentences to build narrative between questions
Track their specific answers—you'll reference them in the profile.
After all 24 questions, tally axis scores and determine quadrant + archetype.
Build anticipation: "Let me put this together for you..."
Then deliver a brief verbal reveal:
"You're in the [Quadrant Name] quadrant—a [Archetype Name]."
Add 1-2 sentences about what this means for them.
Tell them you're generating their full profile now.
Generate their complete profile following Political Compass Profile Format structure exactly.
CRITICAL: The compass image goes at the TOP—right after the header and summary line. Use the hosted URL with markdown:
Write to Political Compass Profile. Reference their specific answers in "The Reveal" and "Personalized Insights" sections.
Clean up session/compass-result.svg after saving.
After saving: "Your profile is saved. You can revisit it anytime."
Offer follow-up options:
"Now that you know where you stand, I can:
🗳️ Find local groups — Suggest political parties, politicians, and activist organizations in your area that match your position
🔥 Roast you — Get a savage (but loving) roast of your political beliefs
Want either of those?"
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. [Read Political Compass Profile]: Read the file at `documents/user/political-compass-profile.md` and analyze its contents (Check if user has previous profile)
2. If previous profile exists, offer the choice: "I see you've taken this before—you landed in the [Quadrant] as a [Archetype]. Would you like to read your profile, or retake the assessment? (Retaking will overwrite your current profile.)"
If retaking or no previous results, set expectations:
"This takes about 5 minutes—24 questions about economics and social values. There are no right or wrong answers, just honest ones. Ready?"
Wait for them to confirm before starting.
3. [Read Political Compass Assessment Framework]: Read the documentation in: `skills/sauna/[skill_id]/references/insights.compass.framework.md` (Assessment methodology)
4. [Read Political Compass Assessment Questions]: Read the documentation in: `skills/sauna/[skill_id]/references/insights.compass.questions.md` (Question set with axis indicators)
5. Administer the questions ONE AT A TIME.
CRITICAL: Use BLANK LINES between options (single line breaks collapse in chat). Include letter labels so users can respond with a single character. Format exactly like this:
**The free market, left to its own devices, tends to produce the best outcomes for society.**
A) Strongly Agree
B) Agree
C) Neutral
D) Disagree
E) Strongly Disagree
Flow:
- Q1: NO percentage (nothing completed yet)
- After each answer: "**[n]% Complete** — [guiding sentence from slice]" then next question
- Use guiding sentences to build narrative between questions
Track their specific answers—you'll reference them in the profile.
After all 24 questions, tally axis scores and determine quadrant + archetype.
6. [Read Political Compass Quadrant Descriptions]: Read the documentation in: `skills/sauna/[skill_id]/references/insights.compass.quadrants.md` (Quadrant descriptions and archetypes)
7. [Read User Profile]: Read all files matching `documents/user/[personal|work|goals|interests].md` and analyze their contents (Check for known user context to personalize profile)
8. Build anticipation: "Let me put this together for you..."
Then deliver a brief verbal reveal:
"You're in the **[Quadrant Name]** quadrant—a **[Archetype Name]**."
Add 1-2 sentences about what this means for them.
Tell them you're generating their full profile now.
9. [Read Political Compass Profile Format]: Read the documentation in: `skills/sauna/[skill_id]/references/insights.compass.profile.md` (Full profile report structure)
10. [Gather Arguments: Generate Political Compass SVG] The next step has the following requirements for arguments, do not proceed until you have all the required information:
- `economicScore`: Economic score from tallied results (-10 to +10)
- `socialScore`: Social score from tallied results (-10 to +10)
- `outputPath`: session/compass-result.svg
11. [Run Code: Generate Political Compass SVG]: Call `run_script` with:
```json
{
"file": {
"path": https://sk.ills.app/code/insights.compass.grid/preview,
"args": [
"economicScore",
"socialScore",
"outputPath"
]
},
"packages": null
}
```
12. [Gather Requirements for Host Image] The next step has the following requirements: "Path to the image file to upload.
Optional: custom filename for the hosted image (will be sanitized).
". Search the user's data for this information or ask them directly if needed. Do not proceed until you have this information.
13. [Execute Host Image Task]: Spawn a subagent and provide it with the requirements gathered above and instructions to read `skills/sauna/[skill_id]/references/recipes/media.image.host.md` for its task list
14. [Read Guillaume Writing Style]: Read the documentation in: `skills/sauna/[skill_id]/references/guillaume.writing.style.md` (Apply concise writing style to profile output)
15. Generate their complete profile following `skills/sauna/[skill_id]/references/insights.compass.profile.md` structure exactly.
CRITICAL: The compass image goes at the TOP—right after the header and summary line. Use the hosted URL with markdown: 
Write to `documents/user/political-compass-profile.md`. Reference their specific answers in "The Reveal" and "Personalized Insights" sections.
Clean up session/compass-result.svg after saving.
After saving: "Your profile is saved. You can revisit it anytime."
16. Offer follow-up options:
"Now that you know where you stand, I can:
🗳️ **Find local groups** — Suggest political parties, politicians, and activist organizations in your area that match your position
🔥 **Roast you** — Get a savage (but loving) roast of your political beliefs
Want either of those?"