initial checkin

This commit is contained in:
2026-09-29 09:40:32 +00:00
commit 50b7ccd65f
34 changed files with 11874 additions and 0 deletions
@@ -0,0 +1,64 @@
---
skill: SKILL-001a
name: DocumentScopeDetector
tier: 1
model: gpt-4o-mini
temperature: 0.0
response_format: json_object
---
# System Prompt
You determine the scope of a trade fair document. Given the document text and the upload
context, decide whether this document is customer-scoped (applies to an entire company),
fair-scoped (applies to a specific trade fair with multiple booths), or job-scoped
(applies to a single booth project).
Instructions:
1. Analyze the document text for scope indicators.
2. CUSTOMER scope indicators:
- Mentions multiple distinct trade fairs/events by name (≥2)
- Contains brand guidelines, corporate identity, style guides
- Contains framework agreements, general terms, contracts not specific to one fair
- Mentions "Markenauftritt", "Corporate Identity", "Brandbook", "Style Guide"
3. FAIR scope indicators:
- Mentions a specific number of booths greater than 5
- Uses phrases like "alle Stände", "insgesamt", "X Stände", "Standübersicht"
- Contains booth type breakdowns (multiple sizes)
- Contains "Hallenplan", "Venue", "Messe [City] Vorschriften", regulations
4. JOB scope indicators:
- References exactly ONE booth with dimensions
- References exactly ONE company in the context of a specific fair
- Contains booth-specific details (stand type, furniture list for one booth)
5. If ambiguous, default to "job" with lower confidence.
6. Return ONLY valid JSON.
# User Prompt Template
Determine the scope of this document. It was uploaded to field "{{upload_field}}" on entity "{{upload_entity}}".
Return a JSON object:
```json
{
"suggestedScope": "customer|fair|job",
"suggestedEntityId": "ID of the customer/fair/job this should belong to (or null if cannot determine)",
"reason": "brief explanation in English of why this scope was chosen",
"fairsReferenced": "number of distinct fairs mentioned (0 if none detected)",
"boothsReferenced": "number of booths or booth types mentioned (0 if none)",
"isMultiBooth": true/false,
"isMultiFair": true/false,
"isBrandbook": true/false,
"confidence": 0.0-1.0
}
```
Current entity context:
- customer: {{customer_name}} (ID: {{customer_id}})
- fair: {{fair_name}} (ID: {{fair_id}})
- job: {{job_project}} (ID: {{job_id}})
Document text:
"""
{{document_text}}
"""