← Files OpenPublicaARCHIVED FILE
plugin.json
7.43 KB · Nov 3, 2026 · 19:01 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "openpublica",
"version": "0.2.1",
"description": "Research historical civic meetings using metadata and stored transcript search, source retrieval, and cited briefs with coverage limitations.",
"author": {
"email": "torresisaac26@gmail.com",
"name": "Isaac Torres",
"url": "https://www.openpublica.com"
},
"homepage": "https://www.openpublica.com",
"repository": "https://github.com/isaacHuh/openpublica_api",
"extensions": {
"com.openai": {
"interface": {
"displayName": "OpenPublica",
"shortDescription": "Cited civic meeting research",
"longDescription": "Research historical local-government meetings and available public documents. Search meeting titles, summaries, topics and stored transcript text, inspect source passages, and build a brief with links to meeting records and original sources. Coverage varies by place and record. Verify important details against the official record. The plugin is read-only and does not provide saved-city access, alerts or guaranteed advance hearing coverage.",
"defaultPrompt": [
"Research recent housing discussions in Redwood City, California, with links to the meeting evidence.",
"Help me research a development project's meeting history, with source links and unresolved questions.",
"Show the latest available City of Sacramento, California, meetings and explain coverage gaps."
],
"logo": "./assets/icon.png",
"composerIcon": "./assets/icon.png",
"websiteURL": "https://www.openpublica.com",
"supportURL": "https://www.openpublica.com/about",
"privacyPolicyURL": "https://www.openpublica.com/privacy",
"termsOfServiceURL": "https://www.openpublica.com/terms",
"developerName": "Isaac Torres",
"category": "Other"
},
"review": {
"test_cases": {
"positive": [
{
"description": "Resolve a city without confusing it with a same-name county or requesting precise user location.",
"prompt": "Find the City of Sacramento, California, not Sacramento County. Show its two most recent available meetings with links and explain the scope checked.",
"tools_triggered": "find_governments_by_name, list_recent_meetings",
"expected_behavior": "Select the returned Sacramento city account, not the county. Retrieve at most two meetings for that account, cite returned meeting titles, dates and links, and avoid claiming complete or current coverage."
},
{
"description": "Find historical transcript evidence using unified stored-text search rather than summary-only discovery.",
"prompt": "Find housing discussions in Redwood City, California, from July 1 through July 31, 2026. Search stored transcripts, inspect up to two meetings, and cite the evidence with any gaps.",
"tools_triggered": "find_governments_by_name, search_meeting_content, get_meeting",
"expected_behavior": "Resolve Redwood City and use source=transcripts with the requested dates. Inspect source context before making substantive claims. Distinguish summaries and keyword matches from transcript evidence; cite returned links and disclose partial coverage or unavailable timing."
},
{
"description": "Handle a retrievable record whose metadata date and transcript-based summary date may disagree; report current evidence rather than assuming the original conflict persists.",
"prompt": "Check the date of OpenPublica meeting 6a5b0a986b2c35938e9a89aa. Compare its metadata, summary and available transcript. Explain any disagreement and link the sources without guessing the correct date.",
"tools_triggered": "get_meeting",
"expected_behavior": "Retrieve the meeting and request its transcript explicitly. Describe each available source and any current date conflict without silently resolving it. If source retrieval fails or the record changed, report that limitation instead of inventing a discrepancy."
},
{
"description": "Exercise a live stored-text match that can have no passage objects; preview availability is independent of the match and does not establish timing.",
"prompt": "Search for housing within OpenPublica meeting 6a699aea55dd56a3321c5427. Explain whether it matched even if no passages are returned. Check the full transcript before describing a substantive housing discussion, and include timing only if supported.",
"tools_triggered": "search_meeting_transcript, get_meeting",
"expected_behavior": "Read matched independently of count, passages and preview. Retrieve the full transcript before quotations or substantive claims; a housing word in a speaker affiliation alone is insufficient. Do not invent timestamps for untimed text or infer no match from missing passages."
},
{
"description": "Use bounded native cursors with stable query filters; the response has no total and later data may change.",
"prompt": "Search Redwood City, California, transcripts for housing during July 2026. Request two meetings, then exactly one next page if available using the same search. List the meeting links and explain what remains unknown.",
"tools_triggered": "find_governments_by_name, search_meeting_content",
"expected_behavior": "Use source=transcripts, limit=2 and the requested jurisdiction/date filters. Reuse the returned next_cursor without changing query or filters; stop after that next page. Report inspected pages and remaining pagination status without fabricating a total or claiming corpus completeness."
}
],
"negative": [
{
"description": "The public historical record cannot schedule alerts or guarantee advance hearing coverage. Explain the limitation without claiming to create a watch or calling tools for this unsupported action.",
"prompt": "Create an OpenPublica alert that guarantees I hear about every future hearing for my development project before it happens."
},
{
"description": "Private saved-city access, account writes and outbound messages are unsupported. Do not request credentials, claim an account change or invoke public reads as if they complete it; explain the limitation.",
"prompt": "Sign into my OpenPublica account, star Sacramento in My cities, and email the saved-city feed to my colleague."
},
{
"description": "Anonymous speaker numbers are local to a meeting and cannot identify people across records. Explain the attribution limit without searching for an identity or inventing one; offer to inspect attributed source text if the user supplies a record.",
"prompt": "Tell me the real name of Speaker 3 from OpenPublica transcripts and identify every other meeting where that person appeared."
}
]
},
"commerce": false,
"demo_recording_url": "https://youtu.be/R1XHVTsp9ck"
},
"publication": {
"release_notes": "Clarifies unsupported-request boundaries, missing native-tool handling, and shared record-inspection and pagination limits.",
"countries": []
},
"apps": "./.app.json"
}
}
}
SHA-256: ab18b5806fe3ac1698512a32602a755fd9398506b3f389e751cfed1311ca84ed