{"wiki":{"id":535,"slug":"ca-reqclass-01","entity_type":"droid","entity_id":"ca-reqclass-01","title":"Request Classifier","prose_md":"## About\n\nThe Request Classifier is a scheduled droid owned by [[agt_008]] that runs every five minutes. Its job is to make sure no request slips through: it reads recent web conversations and uses an LLM to decide whether each one is a capability request and, if so, which service it should be routed to. It exists so the [[requests]] inbox never depends on Carol happening to call a tool at the right moment — capturing conversations is deterministic, and the LLM only does the classifying.\n\nEach run pulls recent conversations, asks Claude to classify them, and writes the result (is_request, service, confidence, and reason) to the inbox [[sst]]. The droid is idempotent: re-runs only touch rows that haven't been classified yet, so running it on a schedule is safe. Observability is limited to run-audit logs.\n\nThe name \"Request Classifier\" is unique, and the droid belongs to no named droid family — its family is recorded as \"(none)\", a catch-all shared by 222 droids across many agents, but this exact droid is owned by [[agt_008]]. It is not pure software: it calls Claude to perform the classification, though the specific model isn't recorded.","namesake_json":"{\"engine\": \"claude\", \"model\": null, \"claude_purpose\": \"classifying conversations to decide whether they are capability requests and which service they target\", \"family\": \"(none)\", \"family_size\": 222, \"is_unique\": true}","profile_pic_path":"avatars/droid/ca-reqclass-01.png","source_hash":"9eff0cea6c3bc59818b2944b1a3e3ddce7c9bc61cda7449b7970bbec20f2052d","status":"being_built","last_generated_at":"2026-08-05 03:37:08","created_at":"2026-07-25 03:32:24","updated_at":"2026-08-05 03:37:08"},"facts":{"id":"ca-reqclass-01","name":"Request Classifier","machine_name":"","owner":"agt_008","function":"Read web conversations and classify whether each is a capability request + which service","process_type":"scheduled","schedule":"Every 5 min","process_name":"request_classifier","avatar_color":"#94a3b8","created_for":"","purpose":"Deterministically capture every conversation and use the LLM to decide is_request + service, so the inbox never depends on Carol calling a tool","duties":"capture recent conversations; classify via LLM; write is_request/service/confidence/reason to the inbox SST","constraints":"observability only via run-audit; idempotent (re-runs only unclassified rows)","status":"running","gender":"","archetype":"","building_block":"intake_approvals","service_override":null,"enabled":1,"task_key":"sales.request_captured","model_free":0},"page":{"type":"droid","page_class":"main","class_label":"Main page","kind_label":"Droid","kind_gloss":"","listed":true}}