You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 8f764db
Browse filesBrowse the repository at this point in the historyBrowse files
description: "Use when: drafting release notes, generating changelog entries, summarizing commits for a release, writing CHANGELOG.md updates, preparing version bump notes. Generates structured release notes from conventional commits."
3
+
tools: [read, search, execute]
4
+
argument-hint: "Describe the version or commit range (e.g. 'draft notes for v1.2.0' or 'changelog since v1.1.4')"
5
+
---
6
+
7
+
You are a **Changelog Drafter** — you generate precise, well-structured release notes from conventional commits. You read git history, categorize changes, and produce a changelog entry that matches the project's existing format.
8
+
9
+
## Approach
10
+
11
+
1.**Detect the changelog format**: Read the existing `CHANGELOG.md` to understand the project's style — heading levels, categories, date format, linking conventions, and tone.
12
+
2.**Determine the commit range**:
13
+
- If the user specifies a version or tag range, use it: `git log v1.1.4..HEAD --oneline`
14
+
- If no range is given, find the latest tag (`git describe --tags --abbrev=0`) and log from there to HEAD
15
+
- Always use `--no-merges` to skip merge commits unless they carry meaningful info
16
+
3.**Categorize commits** by conventional commit prefix:
17
+
-`feat:` → **Added**
18
+
-`fix:` → **Fixed**
19
+
-`docs:` → **Documentation**
20
+
-`test:` → **Tests**
21
+
-`refactor:` → **Changed**
22
+
-`perf:` → **Performance**
23
+
-`chore:` / `ci:` / `build:` → **Maintenance** (collapse into one section)
description: "Use when: writing tests, modifying test files, adding test cases, reviewing test coverage. Covers Vitest conventions, harness patterns, and quality requirements for MCP Comet."
3
+
applyTo: "tests/**"
4
+
---
5
+
6
+
# Testing Conventions
7
+
8
+
## General Rules
9
+
10
+
- NEVER use `.only`, `.skip`, or `.todo` on tests — all tests must run in CI
11
+
- NEVER use `any` type assertions in tests — use proper typing or `as unknown as Type`
Copy file name to clipboardExpand all lines: CHANGELOG.md
+35Lines changed: 35 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,37 @@
1
1
# Changelog
2
2
3
+
## [1.1.5] - 2026-04-15
4
+
5
+
### Fixed
6
+
7
+
-**UAT Reliability:** Updated smoke checks to validate current comet_ask fire-and-forget behavior and timeout handling through comet_wait, resolving previously failing UAT scenarios.
8
+
-**UAT Reporting:** Ensured UAT report output directory is created automatically before writing docs/uat/uat-report.md.
9
+
10
+
### Changed
11
+
12
+
-**Release Metadata:** Bumped package version metadata to 1.1.5.
13
+
-**QA Workflow:** Stabilized release-gate execution and quality checks used during certification.
14
+
15
+
### Documentation
16
+
17
+
- Refreshed README presentation and supporting docs for clearer onboarding and release readiness guidance.
18
+
19
+
## [1.1.4] - 2026-04-13
20
+
21
+
### Documentation
22
+
23
+
-**Product Documentation:** Refreshed README with improved product messaging and updated documentation files with clearer examples and consistent naming conventions.
Copy file name to clipboardExpand all lines: docs/tools.md
+21-33Lines changed: 21 additions & 33 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -70,41 +70,25 @@ Connected to Comet on port {port} (Chrome/{version}), target {targetId}
70
70
71
71
## 2. comet_ask
72
72
73
-
Send a prompt to Perplexity Comet and poll until the agent responds or times out.
73
+
Send a prompt to Perplexity Comet and return immediately.
74
74
75
-
This is the primary interaction tool. It types the prompt into the Comet input field, submits it, and polls for the response using a non-blocking loop with stall detection. The response includes any agent steps and the final answer text.
75
+
This tool submits the prompt and does not block for the final answer. Use `comet_poll` for status snapshots or `comet_wait` to block until completion.
"prompt": "Compare GPT-4 and Claude 3.5 on reasoning benchmarks",
118
-
"newChat": true,
119
-
"timeout": 300000
102
+
"newChat": true
120
103
}
121
104
```
122
105
123
106
### Notes
124
107
125
-
-**Stall detection:** If the response length does not grow for 10 consecutive polls, the tool breaks out of the polling loop and returns whatever has been collected so far.
126
-
-**Response stabilization:** After the agent transitions to `idle` or `completed`, the tool performs up to 5 additional settle polls (1 second apart) to ensure the response text has finished rendering.
127
108
-**Pre-send state capture:** Before typing, the tool captures the current prose count and last prose text to accurately detect new responses versus pre-existing content.
128
109
-**newChat behavior:** When `true`, closes all extra tabs, disconnects, reconnects, and navigates to the Perplexity home page before sending the prompt.
129
110
- If `newChat` is `false` and the main tab differs from the current target, the tool automatically switches to the main tab.
111
+
- This tool is intentionally non-blocking. Pair it with `comet_poll` or `comet_wait` to collect progress and final output.
130
112
131
113
---
132
114
133
115
## 3. comet_poll
134
116
135
117
Poll the current agent status, steps, and response content.
136
118
137
-
Returns a snapshot of the Comet agent state. Use this to check progress after `comet_ask`times out, or to implement custom polling logic in your own agent loop.
119
+
Returns a snapshot of the Comet agent state. Use this after `comet_ask`to check progress, or in a custom polling loop.
138
120
139
121
### Parameters
140
122
@@ -183,7 +165,7 @@ None.
183
165
184
166
Poll until the current agent finishes responding and return the full response.
185
167
186
-
Designed to be used after `comet_ask`times out. It continues polling the agent status until the response completes, another timeout is reached, or stall detection triggers.
168
+
Designed to be used after `comet_ask`submission when you want a blocking wait. It continues polling the agent status until the response completes, another timeout is reached, or stall detection triggers.
187
169
188
170
### Parameters
189
171
@@ -227,7 +209,7 @@ Partial response:
227
209
228
210
-**Stall detection:** Breaks out of the polling loop if the response length does not grow for 10 consecutive polls.
229
211
-**Response stabilization:** After the agent transitions to `idle` or `completed`, performs up to 5 settle polls (1 second apart) to ensure the response has finished rendering.
230
-
- Default timeout is 120 seconds (2 minutes), shorter than `comet_ask` default of 180 seconds.
212
+
- Default timeout is 120 seconds (2 minutes).
231
213
- Returns `"Agent completed with no visible response."` if the agent finishes but no response text was found.
232
214
233
215
---
@@ -649,18 +631,24 @@ Title: {page title}
649
631
650
632
### 1. Ask and Wait (Simple)
651
633
652
-
Use `comet_ask` with the default timeout (180 seconds). This handles most queries in a single call.
634
+
Submit with `comet_ask`, then call `comet_wait` to block until completion.
653
635
636
+
Step 1:
654
637
```json
655
638
{ "prompt": "What is the current state of fusion energy research?" }
656
639
```
657
640
641
+
Step 2:
642
+
```json
643
+
{}
644
+
```
645
+
658
646
### 2. Ask + Poll (Custom Loop)
659
647
660
-
Use `comet_ask` with a short timeout, then loop `comet_poll` in your agent to implement custom progress reporting or conditional logic.
648
+
Submit with `comet_ask`, then loop `comet_poll` in your agent to implement custom progress reporting or conditional logic.
661
649
662
650
```json
663
-
{ "prompt": "Deep research on AI safety", "timeout": 30000 }
651
+
{ "prompt": "Deep research on AI safety" }
664
652
```
665
653
666
654
Then poll:
@@ -671,14 +659,14 @@ Then poll:
671
659
672
660
### 3. Ask + Wait (Two-Phase)
673
661
674
-
Use `comet_ask` (which may timeout for long-running queries), then `comet_wait` to collect the full result. This is useful when you want to start a query and check back later.
662
+
Use `comet_ask`, continue with other work, then call `comet_wait`later to collect the full result.
675
663
676
664
Step 1:
677
665
```json
678
666
{ "prompt": "Write a comprehensive analysis of global semiconductor supply chains" }
0 commit comments