@longtable/provider-claude 0.1.35 → 0.1.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/skills.js +56 -1
- package/package.json +4 -4
package/dist/skills.js
CHANGED
|
@@ -59,7 +59,7 @@ function baseSkillSpecs() {
|
|
|
59
59
|
"- Treat Claude's structured question surface as transport; LongTable state records are the source of truth.",
|
|
60
60
|
"- When an MCP `elicit_question` tool is available in the client, use it first so the checkpoint can be shown through the native elicitation surface and recorded in LongTable state.",
|
|
61
61
|
"- Use `longtable question --print --provider claude --prompt \"...\"` only as a fallback when MCP/native structured elicitation is unavailable, unsupported, declined, canceled, or blocked by the client.",
|
|
62
|
-
"- If `CURRENT.md` shows a pending required checkpoint,
|
|
62
|
+
"- If `CURRENT.md` shows a pending required checkpoint, ask the researcher for a selection and wait. Do not choose or record `longtable decide --question <id> --answer <value>` unless the researcher explicitly provides that value.",
|
|
63
63
|
"- Preserve open tensions and authorship instead of forcing closure.",
|
|
64
64
|
"- Disclose consulted roles with `LongTable consulted: ...` when a role is foregrounded.",
|
|
65
65
|
"- Label unsupported external claims as inference or estimate.",
|
|
@@ -189,6 +189,39 @@ function baseSkillSpecs() {
|
|
|
189
189
|
}
|
|
190
190
|
];
|
|
191
191
|
}
|
|
192
|
+
function mustAskQuestionsForRole(role) {
|
|
193
|
+
const common = [
|
|
194
|
+
"What researcher judgment would be hidden if this role gives a confident answer now?",
|
|
195
|
+
"What evidence or project-state reference would change this role's recommendation?"
|
|
196
|
+
];
|
|
197
|
+
const byRole = {
|
|
198
|
+
editor: [
|
|
199
|
+
"What is the strongest venue-facing contribution claim, and what would make it overreach?"
|
|
200
|
+
],
|
|
201
|
+
reviewer: [
|
|
202
|
+
"What objection would a skeptical reviewer raise first, and what missing evidence would answer it?"
|
|
203
|
+
],
|
|
204
|
+
theory_critic: [
|
|
205
|
+
"Which construct boundary or theoretical assumption must stay explicit before the claim is revised?"
|
|
206
|
+
],
|
|
207
|
+
methods_critic: [
|
|
208
|
+
"Which design choice, comparison, sample, or causal claim is being treated as settled too early?"
|
|
209
|
+
],
|
|
210
|
+
measurement_auditor: [
|
|
211
|
+
"What exactly is being measured, and what would count as construct drift or invalid substitution?"
|
|
212
|
+
],
|
|
213
|
+
ethics_reviewer: [
|
|
214
|
+
"Who could be misrepresented, exposed, or burdened if this design choice is accepted?"
|
|
215
|
+
],
|
|
216
|
+
voice_keeper: [
|
|
217
|
+
"Which part of the researcher's own narrative or uncertainty should not be polished away?"
|
|
218
|
+
],
|
|
219
|
+
venue_strategist: [
|
|
220
|
+
"Which venue expectation is being optimized for, and what positioning tradeoff follows from it?"
|
|
221
|
+
]
|
|
222
|
+
};
|
|
223
|
+
return [...(byRole[role.key] ?? []), ...common];
|
|
224
|
+
}
|
|
192
225
|
function roleSkillSpec(role) {
|
|
193
226
|
const label = role.label;
|
|
194
227
|
return {
|
|
@@ -208,6 +241,28 @@ function roleSkillSpec(role) {
|
|
|
208
241
|
"",
|
|
209
242
|
role.shortDescription,
|
|
210
243
|
"",
|
|
244
|
+
"## Must-Ask Questions",
|
|
245
|
+
"",
|
|
246
|
+
...mustAskQuestionsForRole(role).map((question) => `- ${question}`),
|
|
247
|
+
"",
|
|
248
|
+
"## Stop Conditions",
|
|
249
|
+
"",
|
|
250
|
+
"- Stop before closure when the role's recommendation would change a research question, construct definition, measurement rule, authorship boundary, or venue positioning.",
|
|
251
|
+
"- Stop when the role is relying on unstated evidence, a tacit assumption, or a hidden tradeoff.",
|
|
252
|
+
"- Stop when another LongTable role would likely disagree and the disagreement has not been shown to the researcher.",
|
|
253
|
+
"",
|
|
254
|
+
"## Output Contract",
|
|
255
|
+
"",
|
|
256
|
+
"- Start with the role's strongest concern or contribution.",
|
|
257
|
+
"- State one concrete question the researcher should answer if the direction is not yet safe to settle.",
|
|
258
|
+
"- Separate evidence needs from interpretation and from role-specific judgment.",
|
|
259
|
+
"",
|
|
260
|
+
"## Anti-Patterns",
|
|
261
|
+
"",
|
|
262
|
+
"- Do not give generic encouragement or a polished synthesis without the role's actual objection.",
|
|
263
|
+
"- Do not use the role as a decorative label after a normal answer has already been written.",
|
|
264
|
+
"- Do not ask for evidence only as a fallback; name the missing evidence when it changes the recommendation.",
|
|
265
|
+
"",
|
|
211
266
|
"## Rules",
|
|
212
267
|
"",
|
|
213
268
|
`- Disclose: \`LongTable consulted: ${label}\`.`,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@longtable/provider-claude",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.37",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Claude adapter surface for LongTable",
|
|
6
6
|
"type": "module",
|
|
@@ -21,9 +21,9 @@
|
|
|
21
21
|
"typecheck": "tsc -p tsconfig.json --noEmit"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@longtable/checkpoints": "0.1.
|
|
25
|
-
"@longtable/core": "0.1.
|
|
26
|
-
"@longtable/setup": "0.1.
|
|
24
|
+
"@longtable/checkpoints": "0.1.37",
|
|
25
|
+
"@longtable/core": "0.1.37",
|
|
26
|
+
"@longtable/setup": "0.1.37"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"typescript": "^5.6.0"
|