Coding Pronoun Prompt Resolver
Detects ambiguous pronouns, vague referents, and bare imperatives in user messages and flags them for resolution using conversation context. Zero-latency det... Skill: Coding Pronoun Prompt Resolver Owner: kaicianflone Summary: Detects ambiguous pronouns, vague referents, and bare imperatives in user messages and flags them for resolution using conversation context. Zero-latency det... Tags: latest:0.11.0 Version history: v0.11.0 | 2026-05-31T16:09:22.001Z | user Always-on logging directive + locked, sanitizing ledger writer (bin/log-resolution.py). Secret/PII redaction, hex
Rank
62
Safety
84
Downloads
1.0k
Updated
Oct 11, 2026
Version
0.11.0
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1K downloads reported by the source. Last updated 10/11/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 11, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 11, 2026
- Adoption signal
- 1K downloadsadoption · observed Oct 11, 2026
- Latest release
- 0.11.0release · observed May 31, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s173yh69sk2g7jzav29e74412s83qaga:pronoun-resolver- Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
- Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-kaicianflone-pronoun-resolver/snapshot"
Run-check
$0.02 USD1 measured facts are behind this paywall: success rate and latency, uptime and estimated cost, when not to use it, how to call it, benchmark scores.
Agents pay $0.02 in USDC. A card payment is $0.50, the smallest a card allows.
Documentation
CLAWHUB
116,471 characters of source documentation, loaded on request.
Extracted files
5 files captured from the source.
SKILL.md
---
name: pronoun-resolver
version: 0.11.0
description: |
Detects ambiguous pronouns, vague referents, and bare imperatives in user messages
and flags them for resolution using conversation context. Zero-latency detection via
hook; resolution happens inside the conversation where context lives. Self-learning
via correction ledger with adaptive confidence tiering.
capabilities:
- user-prompt-submit hook (fires on every message, regex-only, no LLM calls)
- file-write: ~/.claude/skills/pronoun-resolver/.claude/pronoun-ledger.json (resolution metadata, no raw prompts)
- file-write: ~/.claude/skills/pronoun-resolver/.claude/pronoun-resolver-analytics.jsonl (per-message stats)
data_retention: |
All data is local-only, never transmitted externally. Prompts are hashed (SHA-256),
never stored as text. Both data files can be deleted without affecting functionality.
hooks:
user-prompt-submit:
- type: command
command: "bash ${CLAUDE_SKILL_DIR}/bin/detect-pronouns.sh"
statusMessage: "Scanning for ambiguous references..."
---
# Pronoun Resolver
## Arguments
If invoked with `--stats`: run `python3 ~/.claude/skills/pronoun-resolver/bin/stats.py` and display the output. Do not proceed with the rest of this skill.
---
You are operating with the pronoun resolver active. When the hook detects ambiguous
references in a user message, you will see flags injected before the message.
## Your Role
YOU are the resolver. You have the conversation context. The hook just detects — you decide.
## Resolution Tiering
When you see `[AMBIGUOUS:]` flags, apply this framework:
### GREEN — Resolve silently (90%+ confidence)
The referent is obvious from the last 1-3 messages. Just act. Don't mention the resolution.
- "Fix it" when you just showed them a bug → fix the bug
- "Make that work" after discussing a failing test → fix the test
### YELLOW — State assumption, proceed (70-90% confidence)
You're fairly sure but there's ambiguity. State what you're assuming in one line, then act.
- "I'm taking 'the other one' to mean `auth.ts` since we discussed two files. Acting on that."
### RED — Ask before acting (<70% confidence)
Multiple plausible referents, or no recent context to resolve against. Ask concisely.
- "What should I make good — the UI layout we discussed or the API response format?"
### BLACK — Bare imperative, no context at all
First message of a conversation with no object. Always ask.
- "Make good" with no prior context → "What would you like me to improve?"
## Flag Format
The hook outputs a preamble followed by flags:
```
[PRONOUN-RESOLVER: Resolve these using conversation context. HIGH confidence=act silently. MEDIUM=state assumption then act. LOW/no context=ask user first.]
[AMBIGUOUS: pronouns="it,that" | type=pronoun]
[AMBIGUOUS: vague="other,something" | type=vague_referent]
[AMBIGUOUS: implicit verb="make" | type=bare_imperative | subtype=verb_adjective]
```
## Ledger
Resolution accuracy is tracked at `~/.claude/skiREADME.md
# Pronoun Resolver
A Claude Code hook that detects ambiguous references in user prompts and flags them for resolution. Zero-latency detection via regex/heuristics — Claude resolves using its own conversation context.
No LLM calls. No external API keys. Fires on every message, produces output only when ambiguity is detected.
## The Problem
When you type "fix it", Claude has to guess what "it" refers to. Sometimes it guesses right. Sometimes it confidently refactors the wrong file.
When you type "Make good" with no context, Claude may invent an interpretation rather than asking.
This hook makes the ambiguity visible so Claude asks instead of guessing.
## How It Works
```
User types: "fix it"
|
+-----------v-----------+
| Hook: detect-pronouns |
| (regex + heuristic) |
| ~0ms, no LLM calls |
+-----------+-----------+
| ambiguity detected
+-----------v-----------+
| Output: flags + |
| compact preamble |
+-----------+-----------+
|
+-----------v-----------+
| Claude receives: |
| [PRONOUN-RESOLVER: Resolve using context. HIGH=act. LOW=ask.] |
| [AMBIGUOUS: pronouns="it" | type=pronoun] |
| fix it |
+--------------------+---+
|
+-----------v-----------+
| Claude resolves using |
| conversation context |
| (GREEN/YELLOW/RED) |
+------------------------+
```
Claude is the resolver. It has the conversation context. The hook just makes ambiguity explicit.
## Detection Categories
### 1. Personal Pronouns (always flagged)
`it`, `them`, `they`, `its`
These are always referential — they can't be determiners.
### 2. Demonstratives (smart filtering)
`this`, `that`, `these`, `those`
Only flagged when used as standalone pronouns, NOT as determiners:
| Prompt | Flagged? | Why |
|--------|----------|-----|
| `fix this` | Yes | "this" is standalone, no object |
| `fix this bug` | No | "this" is a determiner for "bug" |
| `do that and deploy` | Yes | "that" followed by conjunction |
| `update that file` | No | "that" is a determiner for "file" |
| `these tests are failing` | No | "these" is a determiner for "tests" |
### 3. Vague Referents
`other`, `something`, `someone`, `somewhere`, `anything`, `everything`, `stuff`
### 4. Bare Imperatives (implicit subject)
Detected when no pronouns or vague words are found. Catches commands with no explicit object:
| Prompt | Detected | Subtype |
|--------|----------|---------|
| `Fix` | Yes | bare_verb |
| `Make good` | Yes | verb_adjective |
| `Make better/faster` | Yes | verb_adjective |
| `Clean up` | Yes | verb_adjective |
| `Fix the bug` | No | has explicit object |
| `Add tests` | No | has noun object |
## Resolution Tiering
When Claude sees flags, it applies this framework:
| Tier | Confidence | Action |
|------|-----------|--------|
| GREEN | 90%+ | Resolve silently, just act |
| YE_meta.json
{
"ownerId": "kn7aakh8bj9gfbh6ah7rtw6pf180g5qr",
"slug": "pronoun-resolver",
"version": "0.11.0",
"publishedAt": 1780243762001
}CHANGELOG.md
# Changelog All notable changes to the Pronoun Resolver skill are documented here. ## [0.11.0] - 2026-05-31 ### Added - **Always-present logging directive.** The hook now injects a `[PRONOUN-RESOLVER-LOG: ...]` directive on every flagged message, carrying the exact `bin/log-resolution.py` command and ledger path. The hook prints the directive; Claude runs it to record a resolution. The directive is now in context on every fire even when `SKILL.md` isn't loaded (previously the logging instruction lived only in the skill body, so the ledger almost never updated). - **`bin/log-resolution.py`** — a locked, sanitizing ledger writer that owns all ledger mutations. - **`tests/test_log_resolution.py`** — dependency-free unit tests for the sanitizer, ledger I/O, validation, and concurrency. ### Security - **Secret/PII redaction** on every free-text field before it touches disk: API keys, tokens (OpenAI/Stripe/GitHub/GitLab/Slack/npm/Google), JWTs, PEM private keys, credentials in DB URLs, Bearer/Basic auth, emails, SSNs, phone numbers, and long hex/base64 blobs. Control characters (except tab/newline) stripped; over-long values truncated. - **`prompt_hash` validated** as a hex digest (raw text is dropped), and the emitted hook directive single-quotes install-derived paths so a checkout path containing shell metacharacters can't become executable syntax. ### Fixed - **Concurrency race:** ledger writes now run under an exclusive `flock` across the full read-modify-write, so parallel hook fires no longer drop entries. - **Corruption safety:** a non-empty ledger that can't be parsed (or isn't the expected object shape) is backed up to `*.corrupt` instead of being silently overwritten; `confidence` is clamped to `[0,1]` (non-finite → `0.5`) and the writer refuses to emit `NaN`/`Infinity` (`allow_nan=False`).
skill-card.md
## Description: Detects ambiguous pronouns, vague referents, and bare imperatives in user messages and flags them for resolution using conversation context. This skill is ready for commercial/non-commercial use. ## Publisher: [kaicianflone](https://clawhub.ai/user/kaicianflone) ### License/Terms of Use: MIT-0 ## Use Case: Developers and coding-agent users use this skill to make ambiguous prompts visible before an agent guesses the wrong referent. It guides the agent to resolve high-confidence references from conversation context, state assumptions for moderate confidence, or ask before acting when context is weak. ### Deployment Geography for Use: Global ## Known Risks and Mitigations: Risk: The hook runs on every submitted prompt and scans prompt text locally. Mitigation: Install only where this behavior is acceptable, and use the documented project disable sentinel when prompt scanning should be inactive. Risk: The skill keeps local analytics and a resolution ledger under the skill directory. Mitigation: Review the stored fields and delete the ledger or analytics files when retained metadata is no longer wanted. Risk: Stored free-text resolution metadata may still contain novel secret formats or plain-language personal data despite pattern-based redaction. Mitigation: Avoid logging sensitive referents, review retained metadata periodically, and clear the local files for sensitive projects. ## Reference(s): - [ClawHub skill page](https://clawhub.ai/kaicianflone/skills/pronoun-resolver) - [Publisher profile](https://clawhub.ai/user/kaicianflone) - [README](artifact/README.md) - [Changelog](artifact/CHANGELOG.md) - [Evaluation results](artifact/evals/results.json) ## Skill Output: **Output Type(s):** [Text, Markdown, Shell commands, Configuration, Guidance] **Output Format:** [Markdown guidance with inline shell commands and local hook output flags] **Output Parameters:** [1D] **Other Properties Related to Output:** [Runs locally as a user-prompt-submit hook; stores local analytics and resolution metadata when the agent records a resolution.] ## Skill Version(s): 0.11.0 (source: SKILL.md frontmatter and release evidence) ## Ethical Considerations: Users should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.
AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/kaicianflone/skills/pronoun-resolver",
"sourceUrl": "https://clawhub.ai/kaicianflone/skills/pronoun-resolver",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T16:57:57.727Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-kaicianflone-pronoun-resolver/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-kaicianflone-pronoun-resolver/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-11T16:57:57.727Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1K downloads",
"href": "https://clawhub.ai/kaicianflone/pronoun-resolver",
"sourceUrl": "https://clawhub.ai/kaicianflone/pronoun-resolver",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T16:57:57.727Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "0.11.0",
"href": "https://clawhub.ai/kaicianflone/pronoun-resolver",
"sourceUrl": "https://clawhub.ai/kaicianflone/pronoun-resolver",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-05-31T16:09:22.001Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-kaicianflone-pronoun-resolver/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-kaicianflone-pronoun-resolver/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 0.11.0",
"description": "Always-on logging directive + locked, sanitizing ledger writer (bin/log-resolution.py). Secret/PII redaction, hex-validated prompt_hash, flock concurrency fix, corruption-safe writes. Adds unit tests. (Claude+Codex adversarial review)",
"href": "https://clawhub.ai/kaicianflone/pronoun-resolver",
"sourceUrl": "https://clawhub.ai/kaicianflone/pronoun-resolver",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-05-31T16:09:22.001Z",
"isPublic": true
}
]
}Record generated Oct 11, 2026.
