Opens a work record for one legal task and returns the clarifying questions the framework needs answered (step 1, define the task), less any already answered in `answers`. The first two are the country and, in Australia, the state or territory: ask them first. Read the skill ailf://skills/ai-law-framework before the first call.
View input schema
{
"type": "object",
"properties": {
"request": {
"type": "string",
"description": "The user’s request, in their words."
},
"agent": {
"type": "string",
"description": "The agent and product doing the work, for example \"Claude Code\" or \"Codex\"."
},
"answers": {
"type": "object",
"description": "Answers keyed by question id. `from` is \"user\" when the user answered when asked, or \"request\" when the user had already said it (then `quote` holds their words).",
"properties": {
"country": {
"type": "object",
"description": "In which country is the work done, and whose law applies?",
"properties": {
"value": {
"type": "string",
"enum": [
"AU",
"NZ",
"US",
"UK",
"UK-SCT",
"UK-NI",
"other"
]
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"state": {
"type": "object",
"description": "In Australia: which state or territory? Outside Australia, choose not applicable.",
"properties": {
"value": {
"type": "string",
"enum": [
"NSW",
"VIC",
"QLD",
"WA",
"SA",
"TAS",
"ACT",
"NT",
"CTH",
"several",
"not_applicable",
"unsure"
]
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"output": {
"type": "object",
"description": "What exactly is being produced, and what must it be right about?",
"properties": {
"value": {
"type": "string"
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"purpose": {
"type": "object",
"description": "Who will rely on it, and for what decision or step?",
"properties": {
"value": {
"type": "string"
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"leaves_firm": {
"type": "object",
"description": "Will it leave the firm — to a client, another party, a court or a regulator?",
"properties": {
"value": {
"type": "string",
"enum": [
"yes",
"no",
"unsure"
]
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"substantive": {
"type": "object",
"description": "Is it substantive legal work, or procedural or internal?",
"properties": {
"value": {
"type": "string",
"enum": [
"substantive",
"procedural_internal",
"unsure"
]
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"jurisdiction": {
"type": "object",
"description": "Which court, tribunal or regulator (if any) will receive it? Say \"none\" if it stays with the firm and the client.",
"properties": {
"value": {
"type": "string"
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"sworn": {
"type": "object",
"description": "Is any part sworn, affirmed or certified — an affidavit, witness statement or statutory declaration?",
"properties": {
"value": {
"type": "string",
"enum": [
"yes",
"no",
"unsure"
]
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"ai_restriction": {
"type": "object",
"description": "Does any court rule, client instruction or firm policy restrict AI use on this matter?",
"properties": {
"value": {
"type": "string",
"enum": [
"none",
"no_ai_written_content",
"no_ai_at_all",
"unsure"
]
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"information": {
"type": "object",
"description": "What is the most sensitive information the AI will see?",
"properties": {
"value": {
"type": "string",
"enum": [
"public_only",
"confidential",
"personal",
"health",
"unsure"
]
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"sources": {
"type": "object",
"description": "Which sources may be relied on, and are they available to the agent (documents provided, legislation, cases, firm precedents)?",
"properties": {
"value": {
"type": "string"
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"responsible": {
"type": "object",
"description": "Who is the responsible lawyer who will check and approve the output?",
"properties": {
"value": {
"type": "string"
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"junior": {
"type": "object",
"description": "Is the person directing the agent a junior working without supervision?",
"properties": {
"value": {
"type": "string",
"enum": [
"yes",
"no",
"unsure"
]
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"template": {
"type": "object",
"description": "Is there a firm template or playbook for this task that has already been tested with this tool?",
"properties": {
"value": {
"type": "string",
"enum": [
"yes",
"no",
"unsure"
]
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"tool": {
"type": "object",
"description": "Which AI product, plan and settings are in use (for example Claude on a Team plan, or Codex under a ChatGPT Business workspace)?",
"properties": {
"value": {
"type": "string"
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
},
"actions": {
"type": "object",
"description": "In this setup, can the agent send, file or change a system by itself (email, a court portal, the document management system)?",
"properties": {
"value": {
"type": "string",
"enum": [
"yes",
"no",
"unsure"
]
},
"from": {
"type": "string",
"enum": [
"user",
"request"
]
},
"quote": {
"type": "string",
"description": "The user’s own words, when `from` is \"request\"."
},
"detail": {
"type": "string",
"description": "Anything the user added."
}
},
"required": [
"value",
"from"
]
}
},
"additionalProperties": false
}
},
"required": [
"request"
]
}