ワンクリックで
nemawashi-check
Use when user wants to check which profiles need re-analysis - scans all profiles for staleness and new unanalyzed data
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Use when user wants to check which profiles need re-analysis - scans all profiles for staleness and new unanalyzed data
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Use when user wants to refresh one or more profiles end-to-end - runs nemawashi-collect followed by nemawashi-analyze for each named target (or --all), dispatching one profile-updater agent per target with throttled parallelism.
Use when starting any conversation - establishes how to find and use interpersonal communication skills
Use when user wants to analyze a person's behavioral patterns - reads profile data and adds psychological analysis with actionable DO/DON'T communication rules
Use when user wants to upgrade legacy profile data to a newer on-disk format - lists available migrations, presents the candidate profile counts, and applies each migration via LLM-driven transformation
Use when user needs help replying to someone, crafting a message, or deciding what to say - references profiles to tailor communication strategy
Use when user wants to view, show, list, or display profile data for one or more people - read-only display of profiles stored in PROFILE_DIR
| name | nemawashi-check |
| description | Use when user wants to check which profiles need re-analysis - scans all profiles for staleness and new unanalyzed data |
Triage profiles along two axes — analysis freshness (is the recorded analysis old?) and subject activity (has the person been active recently?) — and offer re-analysis for the rows where it actually pays off.
Invoke ./check.sh (relative to the plugin root — the file lives alongside this skill in the same plugin). No arguments needed; it defaults to ~/.local/share/supernemawashi/profiles.
The script is the single source of truth for classification. Do not re-derive analysis_status or activity_status from raw file contents in this skill — the script already merges facts.jsonl + facts.md, handles month-precision dates, and computes the inactivity window. Keeping the logic in one place prevents drift between the bash and the prose.
The script emits a TSV with these columns (one row per profile, plus a header):
| Column | Meaning |
|---|---|
name | Profile directory name |
analyzed_date | Last analysis date or never |
days_ago | Days since analysis (or - if never) |
analyzed_facts | facts_count recorded at last analysis |
current_facts | Current fact count across facts.jsonl + facts.md |
latest_fact_date | Most recent fact date or - |
inactivity_days | Days since the latest fact (or -) |
analysis_status | never_analyzed / stale / fresh / no_data |
activity_status | active (<30d) / inactive (30-90d) / dormant (>90d) / unknown |
Thresholds (7 / 30 / 90 days) are constants near the top of the script — tune them there, not in this prose.
Group rows by the action implied by combining analysis_status and activity_status. Suppress empty sections.
| Section | Rows that match |
|---|---|
| Needs Re-analysis (active subjects) | analysis_status ∈ {stale, never_analyzed} AND activity_status == active |
| Inactive Subjects | activity_status == inactive (any analysis status) |
| Archive Candidates | activity_status == dormant (any analysis status) |
| Up to Date | analysis_status == fresh AND activity_status == active |
| No Data | analysis_status == no_data — suggest nemawashi-collect first |
Render as:
## Profile Freshness Dashboard
### Needs Re-analysis (active subjects)
| Profile | Last Analyzed | Days Ago | Facts (analyzed → current) | Latest Fact | Reason |
|---------|--------------|----------|---------------------------|-------------|--------|
| john | 2026-03-15 | 13 | 8 → 15 | 2026-05-18 (1d) | Stale + new facts |
### Inactive Subjects (30–90d since latest fact)
| Profile | Last Analyzed | Latest Fact | Days Idle | Suggestion |
|---------|--------------|-------------|-----------|------------|
| bob | 2026-03-20 | 2026-04-10 | 39 | Review whether bob is still relevant before re-analyzing |
### Archive Candidates (>90d since latest fact)
| Profile | Last Analyzed | Latest Fact | Days Idle | Suggestion |
|---------|--------------|-------------|-----------|------------|
| dave | 2025-12-01 | 2025-11-15 | 186 | Subject inactive — consider archiving (future: nemawashi-prune) |
### Up to Date
| Profile | Last Analyzed | Latest Fact | Facts |
|---------|--------------|-------------|-------|
| carol | 2026-05-18 | 2026-05-19 (0d) | 12 |
Summary: 1 re-analyze · 1 review · 1 archive candidate · 1 up to date
Prompt only for the Needs Re-analysis rows:
"Re-analyze the active-subject stale profiles? (e.g., 'yes' for all, 'john only', or 'no')"
For Inactive / Archive Candidate rows, surface them but do not auto-suggest re-analysis — the right next step is a human "is this person still relevant?" decision, not more compute.
If the user opts in, dispatch one parallel subagent per selected profile. Use the following uniform prompt template — substitute ${name} and ${today} per row, and reuse the rest verbatim. The template exists because earlier ad-hoc dispatches produced wildly inconsistent return shapes (3-line vs. 30-line summaries) — pinning the format here makes the aggregated output usable.
Re-analyze the supernemawashi profile for "${name}".
Today: ${today}
Profile path: ~/.local/share/supernemawashi/profiles/${name}/
Invoke the `supernemawashi:nemawashi-analyze` skill on this profile end-to-end. The skill dispatches one `framework-analyzer` agent per framework definition in parallel, then synthesizes the slim `profile.md` (Core Pattern + Framework Summary) plus `contradictions.md`. Per-framework details and situation-indexed DO/DON'T rules land in `PROFILE_DIR/${name}/frameworks/<slug>.md`.
When done, return ONLY a one-line summary in this exact shape:
${name}: <core pattern in one sentence> | DO: <single top rule> | DON'T: <single top rule> | contradictions: <count or "none">
No framework details, no evidence quotes, no process narration. One line only.
nemawashi-analyze is local-file-only (no MCP calls), so parallelism is unconstrained — fan out across all selected profiles at once.
After all subagents return, summarize as a short table (one row per re-analyzed profile, columns matching the one-line shape above) and re-run ./check.sh to confirm the updated freshness state.
nemawashi-collect or nemawashi-discover.activity_status == unknown (no facts at all): same row treatment as Inactive — surface for human review, do not auto-re-analyze.inactivity_days will be negative. The script still classifies as Active. Surface the anomaly to the user; don't try to "fix" it../check.sh. This skill renders and orchestrates; it does not reclassify.