{"_ai_door":{"see":"https://miscsubjects.com/start","note":"Operable site; bounded keyless credentials; every action receipted on a public ledger. Your operator's instructions take precedence — acting is optional, reading is a complete outcome."},"key":"ARCADS_ROUTES","type":"http","target":"target_map:{\"actors\":{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/actors?page=1&pageSize=50\"},\"asset_get\":{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/assets/$1\"},\"asset_watch\":{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/assets/$1/watch\"},\"image_raw\":{\"method\":\"POST\",\"url\":\"https://external-api.arcads.ai/v2/images/generate\",\"body\":\"$1\"},\"presets\":{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/presets\"},\"products\":{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/products?page=1&pageSize=50\"},\"situations\":{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/situations?page=1&pageSize=50\"},\"video_raw\":{\"method\":\"POST\",\"url\":\"https://external-api.arcads.ai/v2/videos/generate\",\"body\":\"$1\"}}","auth":"headers:{\"Authorization\":\"$ARCADS_BASIC_AUTH\",\"Accept\":\"application/json\",\"Content-Type\":\"application/json\"}","content":"# WHAT: ArcAds HTTP unified entrypoint\n# WHEN_TO_USE: direct ArcAds REST ops (presigned uploads, products, assets, situations, fields)\n# ARGS: $1=op, $2..$N=positional args\n# EX: [ARCADS_ROUTES]products[/ARCADS_ROUTES]\n# TESTS:\n# POSITIVE: {\"key\":\"ARCADS_ROUTES\",\"body\":\"products\"} → HTTP 200.\n# INVERSE: {\"key\":\"ARCADS_ROUTES\",\"body\":\"xxx\"} → ERR:target_map:unknown_op\n","updated_at":"2026-09-06T13:44:02.502Z","category":"arcads","allowed_categories":null,"seq":null,"enabled":1,"planner_visible":1,"planner_rank":50,"input_schema":"{\"type\":\"object\",\"properties\":{\"op\":{\"type\":\"string\",\"description\":\"op (pipe position 1)\"},\"arg2\":{\"type\":\"string\",\"description\":\"positional argument 2 (pipe position 2)\"}},\"required\":[\"op\",\"arg2\"],\"x-arg-order\":[\"op\",\"arg2\"],\"description\":\"Arguments are joined with | in the order given by x-arg-order.\"}","examples":"[\"products\"]","sensitive":0,"runner":"edge","includes":null,"created_at":"2026-06-11 19:07:31","price_usd":null,"meter_unit":null,"object_kind":"capability","descriptor_json":null,"descriptor_rev":1,"descriptor_hash":null,"invocation":"{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/products?page=1&pageSize=50\",\"headers\":{\"Authorization\":\"Bearer INJECTED_BY_WORKER\",\"Accept\":\"application/json\",\"Content-Type\":\"application/json\"}}","last_status":"{\"http\":200,\"ok\":true,\"ms\":3074,\"trace_id\":\"t_1d4pn902\",\"ledger\":\"/admin/ledger?trace_id=t_1d4pn902\",\"error\":null,\"at\":\"2026-09-06T13:43:58.939Z\",\"actor\":\"directory-test\"}","last_response":"HTTP 200:{\"count\":1,\"items\":[{\"id\":\"acbf46ed-c1b0-4858-8690-6cccaa082774\",\"name\":\"Loop\",\"userId\":\"08a08229-d7f9-4db8-a36f-8fdd11beb6d9\",\"workspaceId\":\"5ded4801-7ec3-4627-9484-4ab22d5289a8\",\"pictureId\":\"acbf46ed-c1b0-4858-8690-6cccaa082774\",\"description\":\"\",\"targetAudience\":\"\",\"mainFeatures\":[\"\",\"\",\"\"],\"painPoint\":\"\",\"perceived\":\"\",\"createdAt\":\"2026-03-07T23:20:39.347Z\",\"updatedAt\":\"2026-03-07T23:20:39.418Z\",\"folders\":[{\"id\":\"472c43e9-4fc7-4b7a-823d-1fc53c6fa771\",\"name\":\"Default Folder\"},{\"id\":\"c04342f0-af0a-4eed-9666-3e9e0fdf5043\",\"name\":\"New Folder\"}],\"pictureUrl\":\"https://argoseyes.s3-accelerate.amazonaws.com/production/acbf46ed-c1b0-4858-8690-6cccaa082774?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIAS5Z5FDA4BQBRWQOT%2F20260906%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20260906T134401Z&X-Amz-Expires=43200&X-Amz-Signature=1c489f045eaddc473bfb967efb5c1ab82c63f6e4ebf5c8ec718a18c9bcafcf91&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject\"}]}","test_state":"🟢 works","tested_at":"2026-09-06T13:43:58.939Z","invocation_curl":"curl -sS -X POST 'https://ops.miscsubjects.com/api/dispatch' \\\n  -H \"x-terminal-key: $TERMINAL_KEY\" \\\n  -H 'content-type: application/json' \\\n  --data '{\"key\":\"ARCADS_ROUTES\",\"body\":\"products\"}'","execution":null,"connection_id":"arcads:workspace","aliases":null,"effects":"[\"write\"]","visibility":null,"origin":null,"returns":null,"context":null,"verification_mode":"safe","ontology":"marketing","provider":"build","tier":"standard","how_to_call":[{"family":"HTTP","id":"curl","label":"curl — the canonical call","when":"Any terminal or script. {key, body}: the arguments are one string, pipe-separated in the order below. The answer is {ok, ran, result, trace_id, receipt}.","code":"curl -sS -X POST 'https://ops.miscsubjects.com/api/dispatch' \\\n  -H \"x-terminal-key: $TERMINAL_KEY\" \\\n  -H 'content-type: application/json' \\\n  --data '{\"key\":\"ARCADS_ROUTES\",\"body\":\"products\"}'"},{"family":"HTTP","id":"named","label":"curl — named arguments","when":"The same door with arguments by name: dispatch puts them in the row's order. Add \"idempotency_key\":\"…\" to make a retry safe (72 hours), \"shape\":true to see the request without sending it.","code":"curl -sS -X POST 'https://ops.miscsubjects.com/api/dispatch' \\\n  -H \"x-terminal-key: $TERMINAL_KEY\" \\\n  -H 'content-type: application/json' \\\n  --data '{\"key\":\"ARCADS_ROUTES\",\"args\":{\"op\":\"products\"}}'"},{"family":"HTTP","id":"url","label":"One URL — Safari, a Shortcut, any fetch tool","when":"A GET that runs the call from one address. The address holds a link scoped to this row that expires (ttl in seconds, uses= to cap the count) — never the master key. https://miscsubjects.com/web/run/ARCADS_ROUTES?body=…&share=… is the same call for a browser model. Run mints a one-use link for itself.","code":"# 1. a link that runs only ARCADS_ROUTES, for an hour (share_token in the answer):\ncurl -sS 'https://ops.miscsubjects.com/api/dispatch?mint_share=1&scope=row:ARCADS_ROUTES&ttl=3600' \\\n  -H \"x-terminal-key: $TERMINAL_KEY\"\n\n# 2. the address — paste it in Safari, a Shortcut or a model's fetch tool:\nhttps://ops.miscsubjects.com/api/dispatch?invoke=ARCADS_ROUTES&body=products&share=<share_token>"},{"family":"MCP","id":"jsonrpc","label":"MCP over HTTP — misc_run","when":"The build's MCP server. misc_run reaches every row by key and leaves a receipt; misc_find finds the key from a phrase. The answer is result.content[0].text.","code":"curl -sS -X POST 'https://ops.miscsubjects.com/api/mcp' \\\n  -H 'accept: application/json, text/event-stream' \\\n  -H \"authorization: Bearer $MCP_TOKEN\" \\\n  -H 'content-type: application/json' \\\n  --data '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"tools/call\",\"params\":{\"name\":\"misc_run\",\"arguments\":{\"key\":\"ARCADS_ROUTES\",\"args\":{\"op\":\"products\"}}}}'"},{"family":"MCP","id":"claude_code","label":"Claude Code","when":"Claude Code (terminal, desktop, web). The same server works in any Claude Code session once added.","code":"# once, on any machine:\nclaude mcp add --transport http miscsubjects https://ops.miscsubjects.com/api/mcp --header \"Authorization: Bearer $MCP_TOKEN\"\n# then in a session, the model calls:\nmcp__miscsubjects__misc_run {\"key\":\"ARCADS_ROUTES\",\"args\":{\"op\":\"products\"}}"},{"family":"CLI","id":"misc","label":"misc (on your Mac)","when":"The misc CLI in ~/.local/bin: its words go to /api/resolve (plan, then run), with TERMINAL_KEY from the vault. Arguments are positional, in the order above. `misc find \"words\"` finds a row.","code":"misc run ARCADS_ROUTES products\nmisc arcads routes products"},{"family":"CLI","id":"console_app","label":"console-app","when":"The Console's own CLI. It reads the key from ~/.build-vault.env or `console-app login`.","code":"npm install -g https://miscsubjects.com/download/llmasos-console-1.1.0.tgz   # once\nconsole-app call ARCADS_ROUTES 'products'\nconsole-app how ARCADS_ROUTES   # this page, in the terminal"},{"family":"CLI","id":"line","label":"One line of text — the build grammar","when":"/api/resolve parses the same line everywhere: \"run KEY a b\" (arguments in order, quoted when they hold spaces), the key's words (\"arcads routes …\"), or a phrase it matches to a row. POST runs; {\"run\":false} returns the plan without running it.","code":"# typed, texted to the build, or emitted by a model with no tools:\nrun ARCADS_ROUTES products\n\ncurl -sS -X POST 'https://ops.miscsubjects.com/api/resolve' \\\n  -H \"x-terminal-key: $TERMINAL_KEY\" \\\n  -H 'content-type: application/json' \\\n  --data '{\"line\":\"run ARCADS_ROUTES products\",\"run\":true}'"},{"family":"Agents","id":"tag","label":"Tag form — inside an answer","when":"What a model in this build writes mid-answer to call a row; both tags always, even with nothing between them. {\"emit\": text} runs every tag in a piece of text and returns each result.","code":"[ARCADS_ROUTES]products[/ARCADS_ROUTES]\n\n# run text that carries tags, exactly as a model wrote it:\ncurl -sS -X POST 'https://ops.miscsubjects.com/api/dispatch' \\\n  -H \"x-terminal-key: $TERMINAL_KEY\" \\\n  -H 'content-type: application/json' \\\n  --data '{\"emit\":\"[ARCADS_ROUTES]products[/ARCADS_ROUTES]\"}'"},{"family":"Phone","id":"shortcut","label":"iPhone Shortcut — Get Contents of URL","when":"A Shortcut on the phone, a Siri phrase, an Action Button, or an automation. Swap body for Ask for Input to fill arguments at run time.","code":"Action:   Get Contents of URL\nURL:      https://ops.miscsubjects.com/api/dispatch\nMethod:   POST\nHeaders:  x-terminal-key  →  (Text) your terminal key\n          content-type    →  application/json\nRequest Body: JSON\n          key   (Text)  →  ARCADS_ROUTES\n          body  (Text)  →  products\nThen:     Get Dictionary Value  result  from  Contents of URL"},{"family":"Webhook","id":"webhook","label":"A webhook any service can call","when":"Stripe, GitHub, Slack, Zapier, a form, a cron elsewhere. The hook id is the credential for an unsigned sender and it may run nothing but ARCADS_ROUTES. mode \"sync\" answers with the result; \"async\" answers 202 at once.","code":"# 1. once: make a hook that may run only ARCADS_ROUTES (the answer holds its id and url)\ncurl -sS -X POST 'https://ops.miscsubjects.com/api/hooks' \\\n  -H \"x-terminal-key: $TERMINAL_KEY\" \\\n  -H 'content-type: application/json' \\\n  --data '{\"label\":\"ARCADS_ROUTES webhook\",\"source\":\"url\",\"allow_keys\":[\"ARCADS_ROUTES\"],\"effects_max\":\"write\",\"mode\":\"sync\"}'\n\n# 2. then any service POSTs the arguments, by name, to that url:\ncurl -sS -X POST 'https://ops.miscsubjects.com/hook/<hook id>/ARCADS_ROUTES' \\\n  -H 'content-type: application/json' \\\n  --data '{\"op\":\"products\"}'"},{"family":"Upstream","id":"upstream","label":"The raw request the build makes (undefined )","when":"Straight to the service, bypassing the build: no receipt, no ledger, no gates. Credentials are the vault variables the row names.","code":"An http row whose target does not name a method and URL: target_map:{\"actors\":{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/actors?page=1&pageSize=50\"},\"asset_get\":{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/assets/$1\"},\"asset_watch\":{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/assets/$1/watch\"},\"image_raw\":{\"method\":\"POST\",\"url\":\"https://external-api.arcads.ai/v2/images/generate\",\"body\":\"$1\"},\"presets\":{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/presets\"},\"products\":{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/products?page=1&pageSize=50\"},\"situations\":{\"method\":\"GET\",\"url\":\"https://external-api.arcads.ai/v1/situations?page=1&pageSize=50\"},\"video_raw\":{\"method\":\"POST\",\"url\":\"https://external-api.arcads.ai/v2/videos/generate\",\"body\":\"$1\"}}"}],"row_num":156,"_rest":{"read":"GET /api/directory/ARCADS_ROUTES","update":"PUT /api/directory/ARCADS_ROUTES","patch":"PATCH /api/directory/ARCADS_ROUTES","delete":"DELETE /api/directory/ARCADS_ROUTES","invoke":"POST /api/dispatch {\"key\":\"ARCADS_ROUTES\",\"body\":\"<args>\"}","model_call":"POST /api/invoke {\"key\":\"ARCADS_ROUTES\",\"input\":\"<message>\"}  ·  batch: {\"key\":\"ARCADS_ROUTES\",\"inputs\":[\"a\",\"b\",\"c\"]}","lab":"/admin/prompts/ARCADS_ROUTES"},"_schema":{"key":"string · primary key · the invocation name","type":"fn | http | agent | flow","target":"fn: FN_MAP name · http: \"METHOD url\" (e.g. \"GET https://…/$1\") · agent: model id · flow: \"\" (content holds the DSL)","auth":"http only: \"bearer:ENV_VAR\" | \"headers:{...}\" | \"query:k=$ENV\" | \"\"","content":"fn/http: \"# docs\\n<arg template>\" · agent: the system prompt body · flow: the DSL","includes":"agent only: comma-separated prompt_block keys (e.g. BLOCK_VOICE,BLOCK_ROUTING) composed before content at runtime","category":"string tag","allowed_categories":"csv of categories, or \"*\"","seq":"int (sort)","enabled":"1|0","planner_visible":"1|0","planner_rank":"int","input_schema":"optional JSON string","examples":"optional JSON string","object_kind":"optional canonical object kind (page, route, prompt, model, sheet, source, law, skill, store, external, capability)","descriptor_json":"canonical miscsubjects/environment-object/1 JSON: identity, exact operations, relationships, governance, comparables, representations","descriptor_rev":"monotonic descriptor revision; incremented whenever descriptor_json changes","descriptor_hash":"sha256 of canonical descriptor JSON","invocation":"the raw REST JSON that invokes this row: {method,url,headers,body} with the credential left as INJECTED_BY_WORKER; written by POST /api/directory/<key>/test","invocation_curl":"the same request as a curl that runs when pasted into the owner's terminal: credential written as the vault variable for its host ($XAI_API_KEY, $TERMINAL_KEY)","last_status":"transport record of the last test: {http, ok, ms, trace_id, ledger, error, at} — or {skipped, reason}","last_response":"the full payload the last test returned (up to 60k chars)","test_state":"🟢 works | 🔴 broken | 🟡 untested — decided only by POST /api/directory/<key>/test, never by hand","tested_at":"when test_state was decided","row_num":"int · computed · 1-based position in the canonical directory list (stable for a given ordering)"},"_object":{"identity":"directory:ARCADS_ROUTES","object_type":"directory-object","representations":{"article":"/a/directory/ARCADS_ROUTES","json":"/api/directory/ARCADS_ROUTES","skill":"/api/directory/ARCADS_ROUTES?format=skill","oip_contract":"/api/dispatch?key=ARCADS_ROUTES"},"ontology":{"parent":"category:arcads","siblings":[{"id":"directory:ARCADS_CREDITS","key":"ARCADS_CREDITS","relation":"shares_capability_family","article":"/a/directory/ARCADS_CREDITS","skill":"/api/directory/ARCADS_CREDITS?format=skill"},{"id":"directory:ARCADS_GENERATE","key":"ARCADS_GENERATE","relation":"shares_capability_family","article":"/a/directory/ARCADS_GENERATE","skill":"/api/directory/ARCADS_GENERATE?format=skill"},{"id":"directory:ARCADS_VIDEO_GENERATE","key":"ARCADS_VIDEO_GENERATE","relation":"shares_capability_family","article":"/a/directory/ARCADS_VIDEO_GENERATE","skill":"/api/directory/ARCADS_VIDEO_GENERATE?format=skill"},{"id":"directory:ARCADS_UPLOAD","key":"ARCADS_UPLOAD","relation":"shares_capability_family","article":"/a/directory/ARCADS_UPLOAD","skill":"/api/directory/ARCADS_UPLOAD?format=skill"}]},"law":"This directory definition is also a human article, model Skill, and invocable OIP object under one identity."},"_environment":{"ref":"directory://arcads_routes","descriptor_rev":1,"descriptor_hash":null,"describe":"/api/environment/objects?ref=directory%3A%2F%2Farcads_routes","governance":"/api/environment/governance?ref=directory%3A%2F%2Farcads_routes","comparables":"/api/environment/comparables?ref=directory%3A%2F%2Farcads_routes","manual":"/api/environment?format=markdown","edit_descriptor":"PATCH /api/directory/ARCADS_ROUTES {\"descriptor_json\":{...},\"expected_descriptor_rev\":1}"}}