# How to Trigger the Patent Disclosure Sub-Skill in Instagit Environments

> Learn how to trigger the patent disclosure sub-skill indirectly. Discover the API call and chat command required to execute this non-user-invocable workflow in Instagit.

- Repository: [handsomestWei/patent-disclosure-skill](https://github.com/handsomestWei/patent-disclosure-skill)
- Tags: how-to-guide
- Published: 2026-09-04

---

**You cannot trigger the patent-disclosure sub-skill directly because it is explicitly configured as non-user-invocable (`user-invocable: false` in [`SKILL.md`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/SKILL.md)), so you must invoke the parent skill via API call (`await agent.run_skill("patent-disclosure")`) or chat command (`开始专利交底书`) to execute the workflow.**

The patent-disclosure package in the `handsomestWei/patent-disclosure-skill` repository is designed as an internal sub-skill that orchestrates the creation of patent disclosure documents. Unlike standalone skills, this component is explicitly restricted from direct user invocation and must be triggered through a higher-level parent skill that manages the complete workflow.

## Why Direct Invocation Is Blocked

In [`skills/patent-disclosure/SKILL.md`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/skills/patent-disclosure/SKILL.md), the skill declares `user-invocable: false`, which explicitly blocks end-users from activating it with direct commands like `!patent-disclosure`. This architectural choice ensures the multi-step patent disclosure process—spanning invention mining, prior-art search, and document generation—executes in the correct sequence under parent skill supervision rather than as isolated calls.

## Methods to Trigger the Patent Disclosure Workflow

To execute the sub-skill, you must interact with the parent skill using one of the following supported methods.

### Programmatic Invocation via Instagit SDK

When building automation or integrating with the Instagit agent framework, call the parent skill programmatically. The parent skill loads the `patent-disclosure` package and runs the step-by-step prompts defined in its `prompts/` directory:

```python
from instagit import Agent

agent = Agent()

# Triggers the parent skill, which internally runs the patent-disclosure sub-skill

await agent.run_skill("patent-disclosure")

```

### Natural Language Chat Trigger

In chat-enabled environments, type the Chinese command that maps to the parent skill:

```text
开始专利交底书

```

The platform recognizes this intent, launches the parent skill, which then instantiates the sub-skill and begins executing the sequence of prompts located in `skills/patent-disclosure/prompts/`.

## Execution Flow After Triggering

Once triggered, the parent skill loads the package and executes the comprehensive workflow. The process includes:

- **Intake and project scanning**: Collecting invention details and analyzing relevant codebase sections
- **Mining phases**: Extracting utility model and design elements through specialized prompts
- **Prior-art search**: Executing [`tools/cnipa_epub_search.py`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/tools/cnipa_epub_search.py) for lightweight Chinese patent database queries
- **Document construction**: Using [`tools/md_to_docx.py`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/tools/md_to_docx.py) and [`tools/browser.py`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/tools/browser.py) to generate and format final Word documents
- **Self-check and iteration**: Running validation steps defined in the prompt files

## Critical Source Files

Understanding these repository paths clarifies the trigger mechanism and restrictions:

- **[`skills/patent-disclosure/SKILL.md`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/skills/patent-disclosure/SKILL.md)**: Contains the `user-invocable: false` flag and defines the execution plan that the parent skill follows
- **`skills/patent-disclosure/prompts/`**: Directory containing markdown files for each workflow step (intake, mining, search, preview, builder)
- **`skills/patent-disclosure/tools/`**: Utility scripts including [`cnipa_epub_search.py`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/cnipa_epub_search.py), [`browser.py`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/browser.py), and [`md_to_docx.py`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/md_to_docx.py) used during execution
- **[`INSTALL.md`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/INSTALL.md)**: Lists prerequisites like Playwright and [`requirements-cnipa.txt`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/requirements-cnipa.txt) required before the sub-skill can function
- **[`README.md`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/README.md)**: Provides top-level usage instructions for the skill package

## Summary

- The patent-disclosure sub-skill is explicitly marked as non-invocable in [`SKILL.md`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/SKILL.md) to prevent direct user access and ensure proper workflow sequencing
- Triggering requires invoking the parent skill either through the Instagit SDK (`agent.run_skill`) or the chat command `开始专利交底书`
- Upon triggering, the sub-skill executes a multi-step workflow using prompts and tools from its respective directories under `skills/patent-disclosure/`
- Direct invocation attempts (e.g., `!patent-disclosure`) are ignored or rejected by the agent framework as implemented in `handsomestWei/patent-disclosure-skill`

## Frequently Asked Questions

### Can I trigger the patent-disclosure sub-skill directly from a user message?

No. The skill configuration in [`SKILL.md`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/SKILL.md) explicitly sets `user-invocable: false`, which prevents direct activation. Any attempt to call `!patent-disclosure` from a user message will be rejected by the agent framework because the skill is designed strictly for internal orchestration by parent skills.

### What is the correct chat command to start the patent disclosure process?

Type `开始专利交底书` (meaning "Start patent disclosure document") in the chat interface. The platform maps this natural language intent to the parent skill, which then loads and executes the patent-disclosure sub-skill workflow defined in the repository's `skills/patent-disclosure/` directory.

### Does the sub-skill require specific dependencies before triggering?

Yes. According to [`INSTALL.md`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/INSTALL.md) in the repository root, the environment must have Playwright installed and Python dependencies from [`requirements-cnipa.txt`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/requirements-cnipa.txt) satisfied before the parent skill can successfully execute the sub-skill's tool scripts like [`cnipa_epub_search.py`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/cnipa_epub_search.py) or [`md_to_docx.py`](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/md_to_docx.py).

### What happens if I try to call `agent.run_skill("patent-disclosure")` without proper parent skill configuration?

The call will fail or return an error because `patent-disclosure` is registered as a sub-skill with restricted invocation rights, not a standalone skill. The agent requires the parent skill wrapper to handle the execution context and sequential prompt loading from `skills/patent-disclosure/prompts/` that the sub-skill cannot manage independently.