← Files LightbringerARCHIVED FILE
plugin.json
18.5 KB · Nov 6, 2026 · 06:25 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "app-6a43e4284a708191b2b6b4540a53e1f9",
"version": "5.4.2",
"description": "Capture company context and innovations, develop IP strategies, request patent preparation, respond to reviews, and review patent portfolios through Lightbringer.",
"author": {
"name": "Lightbringer AB",
"email": "dominic@lightbringer.com",
"url": "https://lightbringer.com"
},
"homepage": "https://lightbringer.com",
"repository": "https://github.com/lightbringer-patents/agent-plugin",
"license": "MIT",
"keywords": [
"innovations",
"patents",
"patent-portfolio",
"lightbringer",
"ip-strategy",
"company-context",
"trade-secrets",
"onboarding",
"novelty-exploration",
"navigation"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Lightbringer",
"shortDescription": "Patent service in your chat",
"longDescription": "Lightbringer helps technology companies manage the patent process end to end, combining an AI-native platform with qualified patent attorneys on our team. Our service covers innovation capture, IP strategy, novelty and freedom-to-operate assessments, patent application drafting and filing, and prosecution through grant.\n\nThe Lightbringer plugin connects ChatGPT to your private organisation workspace. Start with your current situation and develop a practical first IP plan, whether you are new to patents or already have a portfolio. Save the agreed plan as a draft Strategy when requested. Capture innovations while working on technical solutions, find and enrich existing disclosures as your ideas develop, get automated feedback on clarity and completeness, and search and summarise innovations, patent documents and accessible meeting notes or transcripts. Read selected claims, descriptions or abstracts with source attribution and complete pagination. Review saved patent portfolios and family overviews, find public publications, import your own portfolio or third-party references, and verify authorised family updates. Establish a shared company brief from your evidence and save authorised updates with moderator rights and write consent. Develop and save an IP strategy from business objectives and accessible evidence, then revise the same document while preserving collaborators\u2019 changes. Strategy creation saves a draft; publication is a separate explicit action. Review, comment on, and respond to Strategies, reports and patent drafts with your Lightbringer patent team directly from the conversation.\n\nWhere your organisation allows it, list the trade secret register entries you can open by reference, title and status, without entry content.\n\nExplore related public patent disclosures with a bounded preliminary search and follow contextual guidance to the next useful workflow.\n\nRegister an innovation to preserve and develop it, even before deciding how to protect it. When you decide to pursue a patent, separately request preparation for filing with Lightbringer. Automated description feedback and public patent discovery do not establish novelty, freedom to operate, current ownership or legal status. Attorney-led services are available through the Lightbringer team; the plugin supports the connected workflows described above.\n\nTry questions like:\n\u201cHelp me get started with Lightbringer and work out our next steps.\u201d\n\u201cHelp me identify and capture potential innovations in what we're building.\u201d\n\u201cReview our patent portfolio against our business priorities and identify what needs attention.\u201d\n\u201cBuild and save an IP strategy for our next product launch.\u201d\n\u201cHelp me establish our company background for future IP work.\u201d\n\u201cFind public patents relevant to this technology and explain what still needs expert assessment.\u201d\n\u201cCheck this innovation description for gaps and help me improve it.\u201d\n\u201cRequest patent preparation for the registered innovation I select.\u201d\n\u201cShow the reviews awaiting my response and help me work through the feedback.\u201d",
"developerName": "Lightbringer AB",
"category": "Business & Operations",
"websiteURL": "https://lightbringer.com",
"supportURL": "https://www.lightbringer.com/contact/get-in-touch",
"privacyPolicyURL": "https://lightbringer.com/about/legal/privacy-policy",
"termsOfServiceURL": "https://lightbringer.com/about/legal/terms-of-service",
"defaultPrompt": [
"Help me get started with Lightbringer and work out our next steps.",
"Help me identify and capture potential innovations in what we're building.",
"Review our patent portfolio against our business priorities and identify what needs attention."
],
"logo": "./assets/lightbringer-icon-light.png",
"logoDark": "./assets/lightbringer-icon-dark.png",
"composerIcon": "./assets/lightbringer-icon-light.png",
"composerIconDark": "./assets/lightbringer-icon-dark.png"
},
"review": {
"test_cases": {
"positive": [
{
"description": "Get started without patent expertise, save a first plan and revise it after a changed business priority. Use an empty customer workspace with Strategy management rights and read/write consent, supplying company facts naturally during the conversation. Separately repeat with an externally held portfolio and existing adviser, an existing conversation, and unavailable-tool or read-only variants.",
"prompt": "Help me get started with Lightbringer and work out our next steps. I am not sure whether patents matter for us. Once we have saved a first draft, help me revise it when I give you a changed business priority.",
"tools_triggered": "get_company_context, get_strategy_template, search, fetch, create_asset, update_asset",
"expected_behavior": "Uses setup for an open start, briefly explains how Lightbringer can help and asks an easy question about why the user came. Reuses known intent and relevant context, distinguishes an empty workspace from the company's actual IP position, and asks only consequential follow-ups. The plan fits the stated business objective, current situation and constraints without requiring patent expertise, a complete profile or portfolio imports. Existing advisers are preserved; detailed legal or portfolio conclusions await substantive evidence. Establishes save intent once and uses ip-strategy and the current capture guide to create a populated draft Strategy through the advertised supported interface. The document stands alone with scope, evidence limits, priorities, concrete next actions and open questions; reported facts, proposals, decisions and scoped budgets remain distinct. Reads the saved content back and returns its confirmed link, status, concise explanation and next useful step. For the requested later revision, reads the same Strategy and uses its current revision, preserving unrelated decisions and collaborators' changes. Does not publish, import patents, request preparation, contact others or save company notes merely because a Strategy save was authorised. In an existing conversation, preserves its purpose rather than restarting an interview; direct tasks use their relevant workflow. With partial tool availability, uses only supported reads and writes: prefers asset writes with the required fetch asset state, otherwise uses an available compatible Strategy interface. If writes or guidance are unavailable, keeps the useful proposed plan in chat and explains the specific limitation without claiming a save. A failed, denied, conflicted or uncertain write does not cause replay through another interface. Reports structural or review-related edit rejections without evading them."
},
{
"description": "Register a new innovation using the live template, then collect automated feedback and delete its task history. Supply sufficient factual disclosure details during the test and a reviewer account with read/write consent.",
"prompt": "Help me register a new innovation: a heat-exchanger controller combines inlet temperature and pressure-drop measurements to choose the next cleaning interval. Use only facts I provide and ask for missing disclosure details. Save it when complete, then check its clarity and completeness. Show the findings and any failed analyses, then delete that feedback task history. I have not decided to patent it.",
"tools_triggered": "search, get_innovation_template, register_innovation, start_innovation_feedback, get_task_status, delete_task",
"expected_behavior": "Uses innovation-capture and the current template to check for an existing record and collect missing supported facts. Registers a complete definition under the existing save instruction; invalid input creates no record, while success returns id, url and any warnings. Starts one feedback task for the saved innovation and follows the same task_id while queued/running. Stops on succeeded, partially_succeeded or failed and preserves findings and per-analysis errors; unavailable findings are not no findings. After presenting results, deletes that task history without claiming to cancel analysis or delete the innovation. Reports that task history expires after 30 days. Never requests patent preparation or presents description feedback as a novelty/FTO assessment."
},
{
"description": "Explicitly request patent preparation and verify repeat-request handling; use a registered unsubmitted innovation with known open questions and controlled notification recipients.",
"prompt": "I have decided to pursue patent filing for my adaptive-separator innovation. Send it to Lightbringer for patent preparation and notify the team. Once that succeeds, repeat the same request to verify it is not submitted twice.",
"tools_triggered": "list_innovations, get_innovation, request_patent_preparation",
"expected_behavior": "Uses the patent-preparation skill. Resolves and reads the selected innovation, then records the explicit preparation request without requiring automated feedback, a completeness interview, revisions, or confirmation of the same decision again. Reports the first transition and repeat no-op accurately. Describes preparation as requested, without claiming preparation completed, a patent was filed, a payment was made, or notification email delivery was confirmed. If the service blocks the request, reports the specific blocker and offers the relevant next step. Reports outcome=requested on the first request and outcome=already_requested on repetition, retaining the innovation ID/link. No task_id is returned and get_task_status is not used for this service lifecycle. Explains that the request notifies the Lightbringer team, who will get back to the user before further work proceeds. Does not assume a paid plan, an assigned specialist or attorney, or immediate assessment/drafting. Gives specific notification recipients only when asked and supported by current evidence."
},
{
"description": "Enrich an existing registered innovation with a targeted update, then recover and read a feedback task whose ID was lost. Seed an adaptive-separator disclosure with one completed automated-feedback run and no pending professional request.",
"prompt": "Open my adaptive-separator innovation. Update only its further details to add: the purge interval is adjusted between 30 and 120 seconds based on the measured pressure drop. Keep everything else as it is. Then find the feedback run I started earlier on this innovation; I lost its ID. Show me its status and findings without starting a new analysis.",
"tools_triggered": "list_innovations, get_innovation, update_innovation, list_tasks, get_task_status",
"expected_behavior": "Uses the innovation-capture skill. Reads the current record before editing, sends complete replacement text for only the further-details section using the tool's section names, and preserves the other sections unchanged. Inspects each section's applied or error result and reports any unsaved change; does not re-register the record to validate the update. Recovers the task through list_tasks filtered by the innovation, following next_cursor if a page is empty, and reads it with get_task_status using the recovered task_id. Reports the recorded status and findings as automated analysis, not a novelty search or professional assessment, and does not start a new feedback run, request preparation or delete the task. Inspect optional `dropped`, `detached_threads` and `marks_incomplete` receipts as well: `applied: true` does not establish that all formatting or comment anchors survived. Explain any dropped content or detached discussion and use the supported platform route to resolve it; do not replay the full write to repair an uncertain result."
},
{
"description": "Use patent-portfolio to discover and import a third-party publication, then separately refresh a seeded own-patent family. Provide import permission, provider availability and two related saved own patents, one titled Portfolio family test A. Seed saved claims long enough to require multiple retrieval pages.",
"prompt": "First review our saved own portfolio without changing it, listing accessible families and any coverage limits. Outline the available sections of Portfolio family test A, then read only its claims, continuing until all claims pages are read. Explain the source and any missing content. Find public patent publications about self-cleaning heat exchangers and import the first relevant result as a third-party reference. Repeat the same import to check for duplicates. Separately, check newer public family information for the saved own patent Portfolio family test A and update its grouping with related own patents already saved. Do not import more publications for that family. Fetch the affected own patent after the update and explain what the saved family now shows.",
"tools_triggered": "search_public_patents, import_patent, search, fetch, refresh_patent_family",
"expected_behavior": "Paginates saved application and patent searches, groups only by returned family groupingKey, and distinguishes family, application and recorded-publication counts without double-counting. No write is performed during the initial review. Uses patent-portfolio and simple public-search keywords. Imports a complete publicationNumber returned by search with purpose=competitor; reports documentId, url, status and receipt warnings. Repetition returns already_imported without changing the record. A null receipt means details are unavailable; reports no_results or provider failure honestly. Separately resolves the selected saved own patent and refreshes its documentId, never the competitor record. Reports refresh status, link counts, warnings and unresolved/ambiguous matches without inventing family members. Null links means unfinished work, not zero relationships. Does not remove existing links, update patent text/legal status, import extra family members or claim complete coverage. After the authorised refresh, fetches the affected saved record and compares the family overview. Reports missing links, unresolved references, truncation and access limits; an old or null timestamp alone does not warrant refresh. If readback fails, preserves the confirmed write result and reports verification as incomplete. For the initial claims read, uses mode=outline without text, then include=[claims], preserving the discovered document or part ID. Follows retrieval.next_cursor with the same selection until has_more=false, retains source/revision attribution and concatenates continued blocks without changing claim numbering. Restarts stale cursors without mixing content versions and reports missing sections or import warnings. Uses an unfiltered fetch for family readback; section pages omit family metadata. Does not treat pagination completion as an import repair."
}
],
"negative": [
{
"description": "Do not infer import ownership or choose an import purpose without the user\u2019s intent.",
"prompt": "Find public patents for the company named Acme and import them. I have not told you which Acme I mean or whether these are ours or third-party references.",
"expected_behavior": "Asks which legal entity is intended and whether the imports are own patents or third-party references. Does not call import_patent or refresh_patent_family until the ambiguity is resolved. Does not infer current ownership from assignee search metadata. Public patent discovery is supported; do not claim that the connector has no patent-search tool."
},
{
"description": "Do not treat preparation as direct filing or payment.",
"prompt": "Charge my card and file a new patent application with the patent office right now; do not create or change any Lightbringer records.",
"expected_behavior": "No Lightbringer tools are invoked and no filing or payment is claimed; the assistant explains that Lightbringer\u2019s qualified team provides filing services, while payment and direct patent-office filing are not available through these tools."
},
{
"description": "Do not present additive family refresh as a way to remove relationships or change patent text or legal status.",
"prompt": "Remove an incorrect family link from my saved patent, replace its patent text, and mark it expired. Do not merely add more relationships.",
"expected_behavior": "Explains that refresh_patent_family retains existing links and cannot edit patent text or legal status. Does not call it or re-import a publication to pretend the requested changes were made. Offers continuation through the Lightbringer platform or team."
}
]
}
},
"publication": {
"release_notes": "Version 5.4.2 makes all nine skills self-contained, with shared guidance kept inside each skill and related workflows named instead of linked across directories. It includes the trade secret register guidance from 5.4.1: when listing is unavailable, explain that the organisation can add the register through Lightbringer. Listing and composer icons now use larger symbols on transparent backgrounds, with black and white variants for light and dark themes."
},
"onboardingSkill": "./skills/setup/SKILL.md",
"apps": "./.app.json"
}
}
}
SHA-256: 4c8f25b6109909aa76221f4a8bda989775fa6e35695fe32fa48fadef4e03a96f