assistant-architect
Skill9 starsChanged 11 months agoMITView on GitHub
Create AI Studio Assistant Architect JSON import files from screenshots or descriptions. Use when users provide a screenshot of a form/UI to replicate, describe an assistant they want built, or need to generate multi-prompt workflow JSON for PSD AI Studio.
In this repository33 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- cfo-briefingSkill
- clawdbot-monitorSkill
- docxSkill
- drafts-managerSkill
- elevenlabs-ttsSkill
- freshservice-managerSkill
- google-workspaceSkill
- image-genSkill
- knowledge-managerSkill
- legislative-trackerSkill
- local-ttsSkill
- morning-briefingSkill
- multi-model-researchSkill
- obsidian-managerSkill
- omnifocus-managerSkill
- pai-monitorSkill
- pdfSkill
- pdf-to-markdownSkill
- personal-strategic-planningSkill
- pptxSkill
- presentation-masterSkill
- psd-athleticsSkill
- psd-brand-guidelinesSkill
- psd-instructional-visionSkill
- redrover-managerSkill
- researchSkill
- seven-advisorsSkill
- skill-creatorSkill
- sop-creatorSkill
- strategic-planning-managerSkill
- writerSkill
- xlsxSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
15 rules. About 0 are common, 11 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈11
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 20
Create valid JSON import files for PSD AI Studio's Assistant Architect system.
- Distinctive: line 30
When the user provides a screenshot, extract:
- Distinctive: line 50
CRITICAL: When you see a dropdown in a screenshot but can't see its options (e.g., shows "Select subject" or has a dropdown arrow but …
- Distinctive: line 96
When not specified, use:
- Distinctive: line 116
If unclear or incomplete: Ask targeted questions:
- Very specific: line 255
Alternative syntax: Instead of ${prompt_N_output}, you can use ${slugified-prompt-name} (e.g., ${framing} for a prompt named "framing").
- Distinctive: line 296
Before writing the file, verify:
- Very specific: line 323
CRITICAL: When a field represents a finite set of choices (grade levels, subjects, states, etc.), ALWAYS use select or multi_select with …
- Distinctive: line 327
If the screenshot or description contains ANY of these patterns, use a select field:
- Distinctive: line 600
SCOPE: Use these libraries ONLY when building AI Studio assistants for educational/instructional purposes (lesson plans, assessments, …
- Distinctive: line 900
For general assistants: Use the Common Field Libraries (grade, subject, state, tone, format, etc.).
- Very specific: line 902
For educational/instructional assistants: Use the K-12 District-Specific Field Libraries above AND invoke the PSD Instructional Vision …
- Distinctive: line 906
When a dropdown's options aren't visible in a screenshot for an educational tool:
- Distinctive: line 922
When building educational AI Studio assistants, ensure options align with PSD's four essentials:
- Very specific: line 933
Write the JSON file to the user's specified path or ~/Downloads/[kebab-case-name].json.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Assistant Architect
Create valid JSON import files for PSD AI Studio's Assistant Architect system.
Spec Reference: See references/json-spec.md for complete field definitions and validation rules.
Input Modes
From Screenshot
When the user provides a screenshot, extract:
| Element | Maps To |
| Text input boxes | short_text (single line) or long_text (multi-line) |
| Dropdowns/select menus | select with choices from visible options |
| Checkboxes/multi-select | multi_select |
| File upload areas | file_upload |
| Field labels | label property |
| Placeholder text | options.placeholder |
| Visible instructions | system_context or prompt content |
| Step numbers/tabs | Multiple prompts in sequence |
Also infer:
- Assistant name from title/header
- Description from any visible purpose text
- Prompt content from visible instructions or "what this does" text
Handling Collapsed Dropdowns
CRITICAL: When you see a dropdown in a screenshot but can't see its options (e.g., shows "Select subject" or has a dropdown arrow but options aren't expanded), you MUST resolve the options before generating JSON.
Resolution order:
- Check if it matches a Common Field Library (see below)
- "Grade", "Grade Level" → Use Grade Levels library
- "Subject", "Content Area" → Use Subjects library
- "State" → Use US States library
- "Language" → Use Language library
- "Tone", "Style" → Use Writing Tone library
- "Format", "Output Format" → Use Output Format library
- If no library match, ASK the user:
I see a dropdown for "[Field Name]" but can't see the options. Options: a) Provide a screenshot with the dropdown expanded b) List the values that should appear (comma-separated) c) Describe the type of options (e.g., "departments in our district") - Never leave a select field without choices - this will cause import errors
Visual indicators of dropdowns:
- Dropdown arrow (▼ or chevron) on right side
- "Select..." placeholder text
- Bordered box that looks clickable but isn't a text input
- Different styling from text inputs (often lighter/grayed placeholder)
From Description (Dictation/Rambling)
Parse unstructured input for:
| Look For | Maps To |
| "user provides/enters/types..." | Input field |
| "asks for/needs a..." | Input field |
| "choose from/select/pick..." | select field |
| "upload/attach file..." | file_upload field |
| "then/next/after that..." | Additional prompt (chained) |
| "analyze/summarize/write/create..." | Prompt purpose |
| "should be/must be/format as..." | System context or prompt instructions |
Smart Defaults
When not specified, use:
| Decision | Default |
| Model | gpt-4o (complex tasks), gpt-4o-mini (simple Q&A) |
| Field type for text | long_text with 6 rows |
| Execution | Sequential (single prompt unless steps mentioned) |
| Timeouts | null (system default) |
| Required fields | true for primary input, false for options |
Workflow
1. Gather Requirements
If screenshot provided: Extract all visible elements per the table above.
If description provided: Parse for inputs, outputs, and flow.
If unclear or incomplete: Ask targeted questions:
- What should the assistant do?
- What inputs does it need?
- Single or multi-step?
1.5 Resolve All Dropdown Options (REQUIRED)
Before generating JSON, ensure every dropdown has defined options.
For each dropdown/select field identified:
| If... | Then... |
| Options are visible in screenshot | Extract them exactly |
| Field matches a Common Field Library | Use the library options |
| Field is domain-specific (e.g., "Department", "Building", "Program") | ASK the user for the list |
| Unclear what options should be | ASK the user |
Example question format:
I found these dropdowns that need options defined:
1. **Department** - What departments should be listed?
2. **Building** - What buildings/schools should be included?
3. **Program Type** - What program types exist?
You can provide comma-separated values, or share a screenshot with dropdowns expanded.Do NOT proceed to JSON generation with unresolved dropdowns.
2. Design the Assistant
Based on requirements, determine:
| Decision | Options |
| Execution pattern | Sequential (default) / Parallel / Multi-level |
| Model selection | gpt-4o (complex) / gpt-4o-mini (simple) / claude-3-5-sonnet |
| Input fields | short_text, long_text, select, multi_select, file_upload |
| Timeouts | Default null, max 900 seconds |
3. Generate JSON
Build the JSON structure:
{
"version": "1.0",
"exported_at": "[ISO-8601 timestamp]",
"export_source": "Geoffrey Assistant Architect",
"assistants": [{
"name": "[Assistant Name]",
"description": "[Purpose]",
"prompts": [...],
"input_fields": [...]
}]
}4. Write the File
Save to user's preferred location (default: ~/Downloads/[assistant-name].json).
Quick Patterns
Simple Q&A Assistant
{
"version": "1.0",
"export_source": "Geoffrey Assistant Architect",
"assistants": [{
"name": "Quick Helper",
"description": "Answers questions clearly",
"prompts": [{
"name": "answer",
"content": "Answer this question:\n\n${question}",
"system_context": "You are a helpful expert.",
"model_name": "gpt-4o-mini",
"position": 0
}],
"input_fields": [{
"name": "question",
"label": "Your Question",
"field_type": "long_text",
"position": 0,
"options": { "required": true, "rows": 6 }
}]
}]
}Multi-Level Parallel (Solo → Parallel → Synthesis)
Prompts at the same position with different parallel_group values run simultaneously. Parallel prompts can only reference outputs from earlier positions, never from other prompts at the same position.
{
"prompts": [
{
"name": "framing",
"content": "Frame the key issues in this document:\n\n${document}",
"model_name": "gpt-4o",
"position": 0,
"parallel_group": null
},
{
"name": "strengths",
"content": "Based on this framing:\n\n${prompt_0_output}\n\nIdentify strengths and opportunities.",
"model_name": "gpt-4o",
"position": 1,
"parallel_group": 1000
},
{
"name": "risks",
"content": "Based on this framing:\n\n${prompt_0_output}\n\nIdentify risks and weaknesses.",
"model_name": "gpt-4o",
"position": 1,
"parallel_group": 1001
},
{
"name": "synthesis",
"content": "Synthesize these perspectives:\n\nStrengths: ${prompt_1_output}\n\nRisks: ${prompt_2_output}",
"model_name": "gpt-4o",
"position": 2,
"parallel_group": null
}
]
}Key rules:
parallel_group=null→ solo prompt (runs alone at its position)parallel_group= unique number → runs in parallel with other prompts at same position- Parallel prompts reference
${prompt_N_output}from earlier positions ONLY - The synthesis prompt (position 2) can reference all earlier prompt outputs
- Alternative syntax: Instead of
${prompt_N_output}, you can use${slugified-prompt-name}(e.g.,${framing}for a prompt named "framing"). Both${...}and{{...}}delimiters work.
Transform with Options
{
"prompts": [{
"name": "transform",
"content": "Rewrite in ${style} style:\n\n${content}",
"model_name": "gpt-4o",
"position": 0
}],
"input_fields": [
{
"name": "content",
"label": "Content",
"field_type": "long_text",
"position": 0
},
{
"name": "style",
"label": "Writing Style",
"field_type": "select",
"position": 1,
"options": {
"choices": [
{ "value": "formal", "label": "Formal" },
{ "value": "casual", "label": "Casual" },
{ "value": "technical", "label": "Technical" }
],
"default": "formal"
}
}
]
}Validation Checklist
Before writing the file, verify:
versionis"1.0"- Each assistant has
name(min 3 chars),prompts,input_fields - Each prompt has
name,content,model_name,position - Each input field has
name,label,field_type,position positionvalues are sequential starting from 0- All
${variables}match input field names,prompt_N_output, or slugified prompt names - CRITICAL: Every
selectandmulti_selectfield hasoptions.choicesarray with at least 2 items - No dropdown was left with placeholder options like "Option 1", "Option 2"
- Domain-specific dropdowns (departments, buildings, programs) have real values from user
Common Models
| Use Case | Model |
| Complex analysis | gpt-4o |
| Simple tasks | gpt-4o-mini |
| Long context | claude-3-5-sonnet |
| Fast responses | gemini-1.5-flash |
Common Field Libraries
CRITICAL: When a field represents a finite set of choices (grade levels, subjects, states, etc.), ALWAYS use select or multi_select with proper options—NEVER use short_text or long_text.
Detecting Select Fields
If the screenshot or description contains ANY of these patterns, use a select field:
| Pattern | Field Type |
| "Select...", "Choose...", dropdown arrow | select |
| "Pick one", "Which...", finite list | select |
| "Check all that apply", multiple checkboxes | multi_select |
| Grade level, subject, state, language, format | select (use library below) |
Grade Levels (K-12)
{
"name": "grade_level",
"label": "Grade Level",
"field_type": "select",
"options": {
"required": true,
"choices": [
{ "value": "Pre-K", "label": "Pre-K" },
{ "value": "Kindergarten", "label": "Kindergarten" },
{ "value": "1st Grade", "label": "1st Grade" },
{ "value": "2nd Grade", "label": "2nd Grade" },
{ "value": "3rd Grade", "label": "3rd Grade" },
{ "value": "4th Grade", "label": "4th Grade" },
{ "value": "5th Grade", "label": "5th Grade" },
{ "value": "6th Grade", "label": "6th Grade" },
{ "value": "7th Grade", "label": "7th Grade" },
{ "value": "8th Grade", "label": "8th Grade" },
{ "value": "9th Grade", "label": "9th Grade" },
{ "value": "10th Grade", "label": "10th Grade" },
{ "value": "11th Grade", "label": "11th Grade" },
{ "value": "12th Grade", "label": "12th Grade" }
]
}
}Subjects (K-12)
{
"name": "subject",
"label": "Subject",
"field_type": "select",
"options": {
"required": true,
"choices": [
{ "value": "English Language Arts", "label": "English Language Arts" },
{ "value": "Mathematics", "label": "Mathematics" },
{ "value": "Science", "label": "Science" },
{ "value": "Social Studies", "label": "Social Studies" },
{ "value": "History", "label": "History" },
{ "value": "World Languages", "label": "World Languages" },
{ "value": "Physical Education", "label": "Physical Education" },
{ "value": "Health", "label": "Health" },
{ "value": "Visual Arts", "label": "Visual Arts" },
{ "value": "Music", "label": "Music" },
{ "value": "Theater/Drama", "label": "Theater/Drama" },
{ "value": "Computer Science", "label": "Computer Science" },
{ "value": "Career & Technical Education", "label": "Career & Technical Education" },
{ "value": "Special Education", "label": "Special Education" },
{ "value": "Library/Media", "label": "Library/Media" },
{ "value": "Counseling", "label": "Counseling" },
{ "value": "Other", "label": "Other" }
]
}
}US States
{
"name": "state",
"label": "State",
"field_type": "select",
"options": {
"required": true,
"default": "Washington",
"choices": [
{ "value": "Alabama", "label": "Alabama" },
{ "value": "Alaska", "label": "Alaska" },
{ "value": "Arizona", "label": "Arizona" },
{ "value": "Arkansas", "label": "Arkansas" },
{ "value": "California", "label": "California" },
{ "value": "Colorado", "label": "Colorado" },
{ "value": "Connecticut", "label": "Connecticut" },
{ "value": "Delaware", "label": "Delaware" },
{ "value": "Florida", "label": "Florida" },
{ "value": "Georgia", "label": "Georgia" },
{ "value": "Hawaii", "label": "Hawaii" },
{ "value": "Idaho", "label": "Idaho" },
{ "value": "Illinois", "label": "Illinois" },
{ "value": "Indiana", "label": "Indiana" },
{ "value": "Iowa", "label": "Iowa" },
{ "value": "Kansas", "label": "Kansas" },
{ "value": "Kentucky", "label": "Kentucky" },
{ "value": "Louisiana", "label": "Louisiana" },
{ "value": "Maine", "label": "Maine" },
{ "value": "Maryland", "label": "Maryland" },
{ "value": "Massachusetts", "label": "Massachusetts" },
{ "value": "Michigan", "label": "Michigan" },
{ "value": "Minnesota", "label": "Minnesota" },
{ "value": "Mississippi", "label": "Mississippi" },
{ "value": "Missouri", "label": "Missouri" },
{ "value": "Montana", "label": "Montana" },
{ "value": "Nebraska", "label": "Nebraska" },
{ "value": "Nevada", "label": "Nevada" },
{ "value": "New Hampshire", "label": "New Hampshire" },
{ "value": "New Jersey", "label": "New Jersey" },
{ "value": "New Mexico", "label": "New Mexico" },
{ "value": "New York", "label": "New York" },
{ "value": "North Carolina", "label": "North Carolina" },
{ "value": "North Dakota", "label": "North Dakota" },
{ "value": "Ohio", "label": "Ohio" },
{ "value": "Oklahoma", "label": "Oklahoma" },
{ "value": "Oregon", "label": "Oregon" },
{ "value": "Pennsylvania", "label": "Pennsylvania" },
{ "value": "Rhode Island", "label": "Rhode Island" },
{ "value": "South Carolina", "label": "South Carolina" },
{ "value": "South Dakota", "label": "South Dakota" },
{ "value": "Tennessee", "label": "Tennessee" },
{ "value": "Texas", "label": "Texas" },
{ "value": "Utah", "label": "Utah" },
{ "value": "Vermont", "label": "Vermont" },
{ "value": "Virginia", "label": "Virginia" },
{ "value": "Washington", "label": "Washington" },
{ "value": "West Virginia", "label": "West Virginia" },
{ "value": "Wisconsin", "label": "Wisconsin" },
{ "value": "Wyoming", "label": "Wyoming" },
{ "value": "District of Columbia", "label": "District of Columbia" }
]
}
}Learning Standards Frameworks
{
"name": "standards_framework",
"label": "Standards Framework",
"field_type": "select",
"options": {
"required": false,
"choices": [
{ "value": "Common Core State Standards (CCSS)", "label": "Common Core State Standards (CCSS)" },
{ "value": "Next Generation Science Standards (NGSS)", "label": "Next Generation Science Standards (NGSS)" },
{ "value": "C3 Framework (Social Studies)", "label": "C3 Framework (Social Studies)" },
{ "value": "ISTE Standards", "label": "ISTE Standards (Technology)" },
{ "value": "National Core Arts Standards", "label": "National Core Arts Standards" },
{ "value": "SHAPE America Standards (PE/Health)", "label": "SHAPE America Standards (PE/Health)" },
{ "value": "ACTFL Standards (World Languages)", "label": "ACTFL Standards (World Languages)" },
{ "value": "State-Specific Standards", "label": "State-Specific Standards" },
{ "value": "Other", "label": "Other" }
]
}
}Writing Tone/Style
{
"name": "tone",
"label": "Tone",
"field_type": "select",
"options": {
"choices": [
{ "value": "professional", "label": "Professional" },
{ "value": "friendly", "label": "Friendly" },
{ "value": "formal", "label": "Formal" },
{ "value": "casual", "label": "Casual" },
{ "value": "encouraging", "label": "Encouraging" },
{ "value": "academic", "label": "Academic" },
{ "value": "conversational", "label": "Conversational" }
],
"default": "professional"
}
}Output Format
{
"name": "output_format",
"label": "Output Format",
"field_type": "select",
"options": {
"choices": [
{ "value": "paragraph", "label": "Paragraph" },
{ "value": "bullet_points", "label": "Bullet Points" },
{ "value": "numbered_list", "label": "Numbered List" },
{ "value": "table", "label": "Table" },
{ "value": "outline", "label": "Outline" }
],
"default": "paragraph"
}
}Length/Detail Level
{
"name": "length",
"label": "Length",
"field_type": "select",
"options": {
"choices": [
{ "value": "brief", "label": "Brief (1-2 sentences)" },
{ "value": "short", "label": "Short (1 paragraph)" },
{ "value": "medium", "label": "Medium (2-3 paragraphs)" },
{ "value": "detailed", "label": "Detailed (comprehensive)" }
],
"default": "medium"
}
}Audience
{
"name": "audience",
"label": "Audience",
"field_type": "select",
"options": {
"choices": [
{ "value": "students", "label": "Students" },
{ "value": "parents", "label": "Parents/Guardians" },
{ "value": "teachers", "label": "Teachers" },
{ "value": "administrators", "label": "Administrators" },
{ "value": "school_board", "label": "School Board" },
{ "value": "community", "label": "Community Members" },
{ "value": "general", "label": "General Audience" }
]
}
}Language (for multilingual support)
{
"name": "language",
"label": "Output Language",
"field_type": "select",
"options": {
"choices": [
{ "value": "English", "label": "English" },
{ "value": "Spanish", "label": "Spanish" },
{ "value": "Vietnamese", "label": "Vietnamese" },
{ "value": "Chinese (Simplified)", "label": "Chinese (Simplified)" },
{ "value": "Chinese (Traditional)", "label": "Chinese (Traditional)" },
{ "value": "Korean", "label": "Korean" },
{ "value": "Tagalog", "label": "Tagalog" },
{ "value": "Russian", "label": "Russian" },
{ "value": "Arabic", "label": "Arabic" },
{ "value": "Somali", "label": "Somali" },
{ "value": "Ukrainian", "label": "Ukrainian" }
],
"default": "English"
}
}K-12 District-Specific Field Libraries
SCOPE: Use these libraries ONLY when building AI Studio assistants for educational/instructional purposes (lesson plans, assessments, student feedback, curriculum tools, etc.).
Pedagogical alignment: For educational assistants, reference PSD's Instructional Essentials skill (/psd-instructional-vision) to ensure alignment with district beliefs about rigor, inclusion, data-driven decisions, and innovation.
ELA Standards Domains
{
"name": "ela_domain",
"label": "ELA Domain",
"field_type": "select",
"options": {
"choices": [
{ "value": "Reading Literature", "label": "Reading Literature" },
{ "value": "Reading Informational Text", "label": "Reading Informational Text" },
{ "value": "Reading Foundational Skills", "label": "Reading Foundational Skills" },
{ "value": "Writing", "label": "Writing" },
{ "value": "Speaking and Listening", "label": "Speaking and Listening" },
{ "value": "Language", "label": "Language" }
]
}
}Math Standards Domains
{
"name": "math_domain",
"label": "Math Domain",
"field_type": "select",
"options": {
"choices": [
{ "value": "Counting and Cardinality", "label": "Counting and Cardinality (K)" },
{ "value": "Operations and Algebraic Thinking", "label": "Operations and Algebraic Thinking" },
{ "value": "Number and Operations in Base Ten", "label": "Number and Operations in Base Ten" },
{ "value": "Number and Operations - Fractions", "label": "Number and Operations - Fractions" },
{ "value": "Measurement and Data", "label": "Measurement and Data" },
{ "value": "Geometry", "label": "Geometry" },
{ "value": "Ratios and Proportional Relationships", "label": "Ratios and Proportional Relationships" },
{ "value": "The Number System", "label": "The Number System" },
{ "value": "Expressions and Equations", "label": "Expressions and Equations" },
{ "value": "Functions", "label": "Functions" },
{ "value": "Statistics and Probability", "label": "Statistics and Probability" }
]
}
}Science Standards Domains (NGSS)
{
"name": "science_domain",
"label": "Science Domain",
"field_type": "select",
"options": {
"choices": [
{ "value": "Physical Science", "label": "Physical Science" },
{ "value": "Life Science", "label": "Life Science" },
{ "value": "Earth and Space Science", "label": "Earth and Space Science" },
{ "value": "Engineering Design", "label": "Engineering Design" }
]
}
}Grade Bands
{
"name": "grade_band",
"label": "Grade Band",
"field_type": "select",
"options": {
"choices": [
{ "value": "K-2", "label": "K-2 (Primary)" },
{ "value": "3-5", "label": "3-5 (Intermediate)" },
{ "value": "6-8", "label": "6-8 (Middle School)" },
{ "value": "9-12", "label": "9-12 (High School)" }
]
}
}Student Population / Learner Characteristics
{
"name": "student_population",
"label": "Student Population",
"field_type": "multi_select",
"options": {
"choices": [
{ "value": "General Education", "label": "General Education" },
{ "value": "English Learners (EL/MLL)", "label": "English Learners (EL/MLL)" },
{ "value": "Students with IEPs", "label": "Students with IEPs" },
{ "value": "Students with 504 Plans", "label": "Students with 504 Plans" },
{ "value": "Highly Capable", "label": "Highly Capable/Gifted" },
{ "value": "At-Risk", "label": "At-Risk/Tier 2-3" }
]
}
}Instructional Model (aligned with PSD Tier 1 practices)
{
"name": "instructional_model",
"label": "Instructional Model",
"field_type": "select",
"options": {
"choices": [
{ "value": "Whole Group", "label": "Whole Group Direct Instruction" },
{ "value": "Small Group", "label": "Small Group (Flexible Grouping)" },
{ "value": "Stations/Centers", "label": "Stations/Learning Centers" },
{ "value": "Workshop Model", "label": "Workshop Model (Mini-lesson → Work Time → Share)" },
{ "value": "Guided Practice", "label": "Gradual Release (I Do, We Do, You Do)" },
{ "value": "Inquiry-Based", "label": "Inquiry-Based/Project-Based" },
{ "value": "Flipped", "label": "Flipped Classroom" },
{ "value": "Co-Teaching", "label": "Co-Teaching" }
]
}
}Assessment Type (aligned with Data-Driven Decisions essential)
{
"name": "assessment_type",
"label": "Assessment Type",
"field_type": "select",
"options": {
"choices": [
{ "value": "Formative - Exit Ticket", "label": "Formative - Exit Ticket" },
{ "value": "Formative - Check for Understanding", "label": "Formative - Check for Understanding" },
{ "value": "Formative - Observation", "label": "Formative - Observation/Anecdotal" },
{ "value": "Formative - Student Self-Assessment", "label": "Formative - Student Self-Assessment" },
{ "value": "Summative - Unit Test", "label": "Summative - Unit Test" },
{ "value": "Summative - Project/Performance", "label": "Summative - Project/Performance Task" },
{ "value": "Summative - Portfolio", "label": "Summative - Portfolio" },
{ "value": "Benchmark/Interim", "label": "Benchmark/Interim Assessment" },
{ "value": "Diagnostic", "label": "Diagnostic/Pre-Assessment" }
]
}
}Lesson Duration
{
"name": "lesson_duration",
"label": "Lesson Duration",
"field_type": "select",
"options": {
"choices": [
{ "value": "15-20 minutes", "label": "15-20 minutes (Mini-lesson)" },
{ "value": "30 minutes", "label": "30 minutes" },
{ "value": "45 minutes", "label": "45 minutes (Standard period)" },
{ "value": "60 minutes", "label": "60 minutes" },
{ "value": "90 minutes", "label": "90 minutes (Block)" },
{ "value": "Multi-day", "label": "Multi-day lesson" }
]
}
}Bloom's Taxonomy Level (Depth of Knowledge)
{
"name": "cognitive_level",
"label": "Cognitive Level",
"field_type": "select",
"options": {
"choices": [
{ "value": "Remember", "label": "Remember (Recall facts)" },
{ "value": "Understand", "label": "Understand (Explain ideas)" },
{ "value": "Apply", "label": "Apply (Use in new situations)" },
{ "value": "Analyze", "label": "Analyze (Draw connections)" },
{ "value": "Evaluate", "label": "Evaluate (Justify decisions)" },
{ "value": "Create", "label": "Create (Produce new work)" }
]
}
}Depth of Knowledge (Webb's DOK)
{
"name": "dok_level",
"label": "Depth of Knowledge",
"field_type": "select",
"options": {
"choices": [
{ "value": "DOK 1", "label": "DOK 1 - Recall" },
{ "value": "DOK 2", "label": "DOK 2 - Skill/Concept" },
{ "value": "DOK 3", "label": "DOK 3 - Strategic Thinking" },
{ "value": "DOK 4", "label": "DOK 4 - Extended Thinking" }
]
}
}Educator Role
{
"name": "role",
"label": "Role",
"field_type": "select",
"options": {
"choices": [
{ "value": "Classroom Teacher", "label": "Classroom Teacher" },
{ "value": "Special Education Teacher", "label": "Special Education Teacher" },
{ "value": "EL/MLL Specialist", "label": "EL/MLL Specialist" },
{ "value": "Instructional Coach", "label": "Instructional Coach" },
{ "value": "Counselor", "label": "School Counselor" },
{ "value": "Librarian", "label": "Teacher-Librarian" },
{ "value": "Paraeducator", "label": "Paraeducator/IA" },
{ "value": "Principal", "label": "Principal" },
{ "value": "Assistant Principal", "label": "Assistant Principal" },
{ "value": "District Staff", "label": "District Staff" }
]
}
}School Level
{
"name": "school_level",
"label": "School Level",
"field_type": "select",
"options": {
"choices": [
{ "value": "Elementary", "label": "Elementary School" },
{ "value": "Middle", "label": "Middle School" },
{ "value": "High", "label": "High School" },
{ "value": "K-8", "label": "K-8 School" },
{ "value": "Alternative", "label": "Alternative School" },
{ "value": "District-Wide", "label": "District-Wide" }
]
}
}Communication Type
{
"name": "communication_type",
"label": "Communication Type",
"field_type": "select",
"options": {
"choices": [
{ "value": "Parent Newsletter", "label": "Parent Newsletter" },
{ "value": "Parent Email", "label": "Parent Email" },
{ "value": "Student Feedback", "label": "Student Feedback" },
{ "value": "IEP/504 Communication", "label": "IEP/504 Communication" },
{ "value": "Behavior Communication", "label": "Behavior Communication" },
{ "value": "Progress Report", "label": "Progress Report" },
{ "value": "Staff Communication", "label": "Staff Communication" },
{ "value": "Community Announcement", "label": "Community Announcement" }
]
}
}Quarter/Trimester
{
"name": "grading_period",
"label": "Grading Period",
"field_type": "select",
"options": {
"choices": [
{ "value": "Q1", "label": "Quarter 1" },
{ "value": "Q2", "label": "Quarter 2" },
{ "value": "Q3", "label": "Quarter 3" },
{ "value": "Q4", "label": "Quarter 4" },
{ "value": "Semester 1", "label": "Semester 1" },
{ "value": "Semester 2", "label": "Semester 2" },
{ "value": "Full Year", "label": "Full Year" },
{ "value": "Summer", "label": "Summer" }
]
}
}Making Reasonable Assumptions
For general assistants: Use the Common Field Libraries (grade, subject, state, tone, format, etc.).
For educational/instructional assistants: Use the K-12 District-Specific Field Libraries above AND invoke the PSD Instructional Vision skill (/psd-instructional-vision) for pedagogical alignment.
Educational Assistant Decision Framework
When a dropdown's options aren't visible in a screenshot for an educational tool:
| Field Type | Assumption Strategy |
| Grade/Subject/State | Use Common Field Libraries |
| Standards | Use domain-level dropdowns (ELA, Math, Science domains) + text for specific codes |
| Roles/Positions | Use Educator Role library |
| Time/Duration | Use Lesson Duration or Grading Period library |
| Assessment | Use Assessment Type library |
| Instructional approach | Use Instructional Model library |
| Student groups | Use Student Population library |
| Cognitive rigor | Use Bloom's or DOK library |
| District-specific (buildings, departments) | Ask user - these vary by district |
PSD Instructional Essentials Alignment
When building educational AI Studio assistants, ensure options align with PSD's four essentials:
- Rigor & Inclusion → Include scaffolding options, differentiation choices, support for all learners
- Data-Driven Decisions → Include assessment type options, formative check options
- Continuous Growth → Include reflection prompts, self-assessment, goal-setting options
- Innovation → Include technology integration, real-world connection, student voice options
Output
Write the JSON file to the user's specified path or ~/Downloads/[kebab-case-name].json.
Confirm:
- File path written
- Assistant name and purpose
- Number of prompts and input fields
- Next step: Import via AI Studio → Assistants → Import
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

