@forwardimpact/basecamp 2.4.0 → 2.4.2
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/package.json +4 -1
- package/template/.claude/agents/recruiter.md +28 -28
- package/template/.claude/skills/analyze-cv/SKILL.md +35 -35
- package/template/.claude/skills/right-to-be-forgotten/SKILL.md +20 -17
- package/template/.claude/skills/sync-apple-mail/SKILL.md +2 -2
- package/template/.claude/skills/track-candidates/SKILL.md +25 -24
- package/template/.claude/skills/upstream-skill/SKILL.md +6 -6
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forwardimpact/basecamp",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.2",
|
|
4
4
|
"description": "Claude Code-native personal knowledge system with autonomous agents",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -31,5 +31,8 @@
|
|
|
31
31
|
},
|
|
32
32
|
"dependencies": {
|
|
33
33
|
"xlsx": "^0.18.5"
|
|
34
|
+
},
|
|
35
|
+
"publishConfig": {
|
|
36
|
+
"access": "public"
|
|
34
37
|
}
|
|
35
38
|
}
|
|
@@ -29,14 +29,14 @@ framework.
|
|
|
29
29
|
|
|
30
30
|
### Career Levels
|
|
31
31
|
|
|
32
|
-
| Level | Title Pattern
|
|
33
|
-
| ----- |
|
|
34
|
-
| J040 | Level I / Associate
|
|
35
|
-
| J060 | Level II / Senior Assoc | Independent on familiar problems
|
|
36
|
-
| J070 | Level III / Manager
|
|
37
|
-
| J090 | Staff / Senior Mgr
|
|
38
|
-
| J100 | Principal / Director
|
|
39
|
-
| J110 | Senior Principal
|
|
32
|
+
| Level | Title Pattern | Key Indicators |
|
|
33
|
+
| ----- | ----------------------- | ---------------------------------------- |
|
|
34
|
+
| J040 | Level I / Associate | Learning, needs guidance, basic tasks |
|
|
35
|
+
| J060 | Level II / Senior Assoc | Independent on familiar problems |
|
|
36
|
+
| J070 | Level III / Manager | Handles ambiguity, mentors others |
|
|
37
|
+
| J090 | Staff / Senior Mgr | Area scope, leads complex initiatives |
|
|
38
|
+
| J100 | Principal / Director | Org-wide impact, shapes direction |
|
|
39
|
+
| J110 | Senior Principal | Enterprise strategy, cross-org influence |
|
|
40
40
|
|
|
41
41
|
### Forward Deployed vs Platform — Track Differences
|
|
42
42
|
|
|
@@ -47,14 +47,14 @@ track fit right is critical for hiring success.
|
|
|
47
47
|
(Commercial, Manufacturing, R&D). They operate like a "startup CTO" — bridging
|
|
48
48
|
product and business, discovering patterns in the field.
|
|
49
49
|
|
|
50
|
-
| Dimension
|
|
51
|
-
|
|
|
52
|
-
| **Core strength**
|
|
53
|
-
| **Boosted skills
|
|
54
|
-
| **Reduced skills
|
|
55
|
-
| **Key behaviours
|
|
56
|
-
| **Mindset**
|
|
57
|
-
| **Typical CV signals** | Multiple industries, customer projects, MVPs, analytics
|
|
50
|
+
| Dimension | Forward Deployed | Platform |
|
|
51
|
+
| ---------------------- | ---------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
|
|
52
|
+
| **Core strength** | Delivery, domain immersion, rapid prototyping | Architecture, scalability, reliability |
|
|
53
|
+
| **Boosted skills** | Data Integration, Full-Stack Dev, Problem Discovery, Business Immersion, Stakeholder Mgmt, Model Development | Architecture & Design, Cloud Platforms, Code Quality, DevOps & CI/CD, Data Modeling, Technical Debt Mgmt |
|
|
54
|
+
| **Reduced skills** | Scale, Reliability, Process capabilities | Delivery capability |
|
|
55
|
+
| **Key behaviours** | Own the Outcome (+1), Be Polymath Oriented (+1), Don't Lose Your Curiosity (+1), Communicate with Precision (+1) | Think in Systems (+1), Communicate with Precision (+1) |
|
|
56
|
+
| **Mindset** | Ship fast, learn from users, bridge business & tech | Build for the long term, treat devs as customers |
|
|
57
|
+
| **Typical CV signals** | Multiple industries, customer projects, MVPs, analytics | Infrastructure, platform teams, APIs, shared services |
|
|
58
58
|
|
|
59
59
|
**Hiring implications:**
|
|
60
60
|
|
|
@@ -76,8 +76,8 @@ engineering_management — tracks: dx
|
|
|
76
76
|
product_management — no tracks
|
|
77
77
|
```
|
|
78
78
|
|
|
79
|
-
Use `npx fit-pathway discipline {id}` to see skill tiers and behaviour
|
|
80
|
-
|
|
79
|
+
Use `npx fit-pathway discipline {id}` to see skill tiers and behaviour modifiers
|
|
80
|
+
for each discipline.
|
|
81
81
|
|
|
82
82
|
## Data Protection
|
|
83
83
|
|
|
@@ -100,14 +100,14 @@ professional information.
|
|
|
100
100
|
views, religious beliefs, sexual orientation, or other special category data
|
|
101
101
|
— even if it appears in a CV or email.
|
|
102
102
|
5. **Assume the candidate will see it.** Write every assessment and note as if
|
|
103
|
-
the candidate will request a copy (GDPR Article 15 — right of access). If
|
|
104
|
-
|
|
103
|
+
the candidate will request a copy (GDPR Article 15 — right of access). If you
|
|
104
|
+
wouldn't be comfortable sharing it with them, don't write it.
|
|
105
105
|
|
|
106
106
|
## Human Oversight
|
|
107
107
|
|
|
108
108
|
This agent **recommends** — the user **decides**. Automated recruitment tools
|
|
109
|
-
carry legal and ethical risk when they make consequential decisions without
|
|
110
|
-
review.
|
|
109
|
+
carry legal and ethical risk when they make consequential decisions without
|
|
110
|
+
human review.
|
|
111
111
|
|
|
112
112
|
**Hard rules:**
|
|
113
113
|
|
|
@@ -115,8 +115,8 @@ review.
|
|
|
115
115
|
proceed," but the user must make the final rejection decision. Assessments
|
|
116
116
|
are advisory, not dispositive.
|
|
117
117
|
2. **Level estimates are hypotheses.** Always present estimated career level
|
|
118
|
-
with confidence language ("likely J060", "evidence suggests J070") — never
|
|
119
|
-
|
|
118
|
+
with confidence language ("likely J060", "evidence suggests J070") — never as
|
|
119
|
+
definitive fact. CVs are incomplete signals.
|
|
120
120
|
3. **Flag uncertainty.** When evidence is thin or ambiguous, say so explicitly.
|
|
121
121
|
Recommend interview focus areas to resolve uncertainty rather than guessing.
|
|
122
122
|
4. **No ranking by protected characteristics.** Never sort, filter, or rank
|
|
@@ -145,8 +145,8 @@ diverse candidates don't exist.
|
|
|
145
145
|
gender or any other protected characteristic.
|
|
146
146
|
4. **Track sourcing channels.** When a sourcing channel consistently produces
|
|
147
147
|
homogeneous candidate pools, note **the channel pattern** (not individual
|
|
148
|
-
candidates) in `knowledge/Candidates/Insights.md` so the user can address
|
|
149
|
-
|
|
148
|
+
candidates) in `knowledge/Candidates/Insights.md` so the user can address it
|
|
149
|
+
with the agency.
|
|
150
150
|
5. **Gender data handling.** Gender is recorded only when explicitly stated in
|
|
151
151
|
recruiter communications (pronouns, titles like "Ms./Mr."). Never infer
|
|
152
152
|
gender from names. Record as `Woman`, `Man`, or `—` (unknown). When
|
|
@@ -180,8 +180,8 @@ for dir in knowledge/Candidates/*/; do
|
|
|
180
180
|
done
|
|
181
181
|
```
|
|
182
182
|
|
|
183
|
-
For each unassessed candidate with a CV, run the `analyze-cv` skill workflow.
|
|
184
|
-
|
|
183
|
+
For each unassessed candidate with a CV, run the `analyze-cv` skill workflow. If
|
|
184
|
+
the target role is known from the candidate brief, use it:
|
|
185
185
|
|
|
186
186
|
```bash
|
|
187
187
|
# Look up the role for context
|
|
@@ -50,17 +50,17 @@ Run this skill:
|
|
|
50
50
|
|
|
51
51
|
Read the candidate's CV file. Extract:
|
|
52
52
|
|
|
53
|
-
| Field
|
|
54
|
-
|
|
|
55
|
-
| **Current role**
|
|
56
|
-
| **Years of experience
|
|
57
|
-
| **Technical skills**
|
|
58
|
-
| **Domain experience**
|
|
59
|
-
| **Education**
|
|
60
|
-
| **Leadership signals**
|
|
61
|
-
| **Scope signals**
|
|
62
|
-
| **Communication**
|
|
63
|
-
| **Gender**
|
|
53
|
+
| Field | What to look for |
|
|
54
|
+
| ----------------------- | --------------------------------------------------- |
|
|
55
|
+
| **Current role** | Most recent job title |
|
|
56
|
+
| **Years of experience** | Total and per-role tenure |
|
|
57
|
+
| **Technical skills** | Languages, frameworks, platforms, tools mentioned |
|
|
58
|
+
| **Domain experience** | Industries, business domains, customer-facing work |
|
|
59
|
+
| **Education** | Degrees, certifications, relevant courses |
|
|
60
|
+
| **Leadership signals** | Team size, mentoring, cross-team work, architecture |
|
|
61
|
+
| **Scope signals** | Scale of systems, user base, revenue impact |
|
|
62
|
+
| **Communication** | Publications, talks, open source, documentation |
|
|
63
|
+
| **Gender** | Pronouns, gendered titles (never infer from names) |
|
|
64
64
|
|
|
65
65
|
## Step 2: Look Up the Framework Reference
|
|
66
66
|
|
|
@@ -112,15 +112,15 @@ npx fit-pathway track platform
|
|
|
112
112
|
|
|
113
113
|
Map CV evidence to track indicators:
|
|
114
114
|
|
|
115
|
-
| Forward Deployed signals
|
|
116
|
-
|
|
|
117
|
-
| Customer-facing projects
|
|
118
|
-
| Business domain immersion
|
|
119
|
-
| Rapid prototyping, MVPs
|
|
120
|
-
| Data integration, analytics
|
|
121
|
-
| Stakeholder management
|
|
122
|
-
| Cross-functional work
|
|
123
|
-
| Multiple industries or domain breadth
|
|
115
|
+
| Forward Deployed signals | Platform signals |
|
|
116
|
+
| ------------------------------------- | --------------------------------------- |
|
|
117
|
+
| Customer-facing projects | Internal tooling / shared services |
|
|
118
|
+
| Business domain immersion | Infrastructure / platform-as-product |
|
|
119
|
+
| Rapid prototyping, MVPs | Architecture, system design |
|
|
120
|
+
| Data integration, analytics | CI/CD, DevOps, reliability |
|
|
121
|
+
| Stakeholder management | Code quality, technical debt management |
|
|
122
|
+
| Cross-functional work | Scalability, performance engineering |
|
|
123
|
+
| Multiple industries or domain breadth | Deep platform ownership |
|
|
124
124
|
|
|
125
125
|
## Step 3: Map CV to Framework Skills
|
|
126
126
|
|
|
@@ -134,13 +134,13 @@ npx fit-pathway skill {skill_id}
|
|
|
134
134
|
|
|
135
135
|
Use the proficiency definitions from the framework:
|
|
136
136
|
|
|
137
|
-
| Proficiency | CV Evidence
|
|
138
|
-
| -------------- |
|
|
139
|
-
| `awareness` | Mentioned but no project evidence
|
|
140
|
-
| `foundational` | Used in projects, basic application
|
|
141
|
-
| `working` | Primary tool/skill in multiple roles, independent usage
|
|
142
|
-
| `practitioner` | Led teams using this skill, mentored others, deep work
|
|
143
|
-
| `expert` | Published, shaped org practice, industry recognition
|
|
137
|
+
| Proficiency | CV Evidence |
|
|
138
|
+
| -------------- | ------------------------------------------------------- |
|
|
139
|
+
| `awareness` | Mentioned but no project evidence |
|
|
140
|
+
| `foundational` | Used in projects, basic application |
|
|
141
|
+
| `working` | Primary tool/skill in multiple roles, independent usage |
|
|
142
|
+
| `practitioner` | Led teams using this skill, mentored others, deep work |
|
|
143
|
+
| `expert` | Published, shaped org practice, industry recognition |
|
|
144
144
|
|
|
145
145
|
**Be conservative.** CVs inflate; default one level below what's claimed unless
|
|
146
146
|
there's concrete evidence (metrics, project details, scope indicators).
|
|
@@ -155,13 +155,13 @@ npx fit-pathway behaviour --list
|
|
|
155
155
|
|
|
156
156
|
Map CV evidence to behaviours:
|
|
157
157
|
|
|
158
|
-
| Behaviour
|
|
159
|
-
|
|
|
160
|
-
| Own the Outcome
|
|
161
|
-
| Think in Systems
|
|
162
|
-
| Communicate with Precision
|
|
163
|
-
| Be Polymath Oriented
|
|
164
|
-
| Don't Lose Your Curiosity
|
|
158
|
+
| Behaviour | CV Evidence |
|
|
159
|
+
| -------------------------- | -------------------------------------------------- |
|
|
160
|
+
| Own the Outcome | End-to-end ownership, P&L impact, delivery metrics |
|
|
161
|
+
| Think in Systems | Architecture decisions, system-wide reasoning |
|
|
162
|
+
| Communicate with Precision | Technical writing, documentation, talks |
|
|
163
|
+
| Be Polymath Oriented | Cross-domain work, diverse tech stack |
|
|
164
|
+
| Don't Lose Your Curiosity | Side projects, continuous learning, certifications |
|
|
165
165
|
|
|
166
166
|
## Step 5: Identify Gaps and Strengths
|
|
167
167
|
|
|
@@ -259,7 +259,7 @@ to create the candidate profile from email threads.
|
|
|
259
259
|
## Quality Checklist
|
|
260
260
|
|
|
261
261
|
- [ ] Assessment is grounded in `fit-pathway` framework data, not subjective
|
|
262
|
-
|
|
262
|
+
opinion
|
|
263
263
|
- [ ] Every skill rating cites specific CV evidence or marks "Not evidenced"
|
|
264
264
|
- [ ] Estimated level is conservative (one below CV claims unless proven)
|
|
265
265
|
- [ ] Track fit analysis references specific skill modifiers from the framework
|
|
@@ -38,7 +38,8 @@ Run this skill:
|
|
|
38
38
|
|
|
39
39
|
- **Name**: Full name of the data subject (required)
|
|
40
40
|
- **Aliases**: Alternative names, maiden names, nicknames (optional)
|
|
41
|
-
- **Email addresses**: Known email addresses (optional, improves search
|
|
41
|
+
- **Email addresses**: Known email addresses (optional, improves search
|
|
42
|
+
coverage)
|
|
42
43
|
- **Scope**: `all` (default) or `recruitment-only` (limits to candidate data)
|
|
43
44
|
|
|
44
45
|
## Outputs
|
|
@@ -55,6 +56,7 @@ Before proceeding, clearly state to the user:
|
|
|
55
56
|
> **Data erasure request for: {Name}**
|
|
56
57
|
>
|
|
57
58
|
> This will permanently delete all personal data related to {Name} from:
|
|
59
|
+
>
|
|
58
60
|
> - Knowledge base notes (People, Candidates, Organizations mentions)
|
|
59
61
|
> - Cached email threads and attachments
|
|
60
62
|
> - Agent state and triage files
|
|
@@ -134,16 +136,16 @@ Compile a complete inventory of every file and reference found.
|
|
|
134
136
|
|
|
135
137
|
For each discovered reference, classify the required action:
|
|
136
138
|
|
|
137
|
-
| Reference Type
|
|
138
|
-
|
|
|
139
|
-
| **Dedicated note** (sole subject)
|
|
140
|
-
| **Dedicated directory**
|
|
141
|
-
| **Mention in another note**
|
|
142
|
-
| **Email thread** (sole subject)
|
|
143
|
-
| **Email thread** (multiple people) | Redact: remove paragraphs about the person
|
|
144
|
-
| **Attachment** (their CV, etc.)
|
|
145
|
-
| **Triage/state file**
|
|
146
|
-
| **Insights file**
|
|
139
|
+
| Reference Type | Action | Example |
|
|
140
|
+
| ---------------------------------- | ------------------------------------------- | ----------------------------------------------- |
|
|
141
|
+
| **Dedicated note** (sole subject) | Delete entire file | `knowledge/People/{Name}.md` |
|
|
142
|
+
| **Dedicated directory** | Delete entire directory | `knowledge/Candidates/{Name}/` |
|
|
143
|
+
| **Mention in another note** | Redact: remove lines referencing the person | Backlink in `knowledge/Organizations/Agency.md` |
|
|
144
|
+
| **Email thread** (sole subject) | Delete file | `~/.cache/fit/basecamp/apple_mail/thread.md` |
|
|
145
|
+
| **Email thread** (multiple people) | Redact: remove paragraphs about the person | Thread discussing multiple candidates |
|
|
146
|
+
| **Attachment** (their CV, etc.) | Delete file | `attachments/{thread}/CV.pdf` |
|
|
147
|
+
| **Triage/state file** | Redact: remove lines mentioning them | `recruiter_triage.md` |
|
|
148
|
+
| **Insights file** | Redact: remove bullets mentioning them | `knowledge/Candidates/Insights.md` |
|
|
147
149
|
|
|
148
150
|
## Step 3: Execute Deletions
|
|
149
151
|
|
|
@@ -222,7 +224,7 @@ rg -v "{deleted_path}" ~/.cache/fit/basecamp/state/graph_processed \
|
|
|
222
224
|
|
|
223
225
|
Create the audit trail at `knowledge/Erasure/{Name}--{YYYY-MM-DD}.md`:
|
|
224
226
|
|
|
225
|
-
|
|
227
|
+
````markdown
|
|
226
228
|
# Data Erasure Report — {Full Name}
|
|
227
229
|
|
|
228
230
|
**Date:** {YYYY-MM-DD HH:MM}
|
|
@@ -278,10 +280,11 @@ After erasure, verify no traces remain:
|
|
|
278
280
|
|
|
279
281
|
```bash
|
|
280
282
|
rg "{Name}" knowledge/ ~/.cache/fit/basecamp/
|
|
281
|
-
|
|
283
|
+
````
|
|
282
284
|
|
|
283
285
|
Expected result: no matches (except this erasure report).
|
|
284
|
-
|
|
286
|
+
|
|
287
|
+
````
|
|
285
288
|
|
|
286
289
|
**IMPORTANT:** The erasure report itself must NOT contain personal data beyond
|
|
287
290
|
the name and the fact that data was deleted. Do not copy CV content, skill
|
|
@@ -294,7 +297,7 @@ Run a final search to confirm no references were missed:
|
|
|
294
297
|
|
|
295
298
|
```bash
|
|
296
299
|
rg "{Name}" knowledge/ ~/.cache/fit/basecamp/ drafts/
|
|
297
|
-
|
|
300
|
+
````
|
|
298
301
|
|
|
299
302
|
The only match should be the erasure report itself. If other matches remain,
|
|
300
303
|
process them and update the report.
|
|
@@ -310,8 +313,8 @@ When scope is `recruitment-only`, limit erasure to:
|
|
|
310
313
|
- Recruitment-related email threads (from known agency domains)
|
|
311
314
|
- `recruiter_triage.md` state file
|
|
312
315
|
|
|
313
|
-
Leave `knowledge/People/{Name}.md` and general knowledge graph references
|
|
314
|
-
|
|
316
|
+
Leave `knowledge/People/{Name}.md` and general knowledge graph references intact
|
|
317
|
+
— the person may be a colleague or contact outside of recruitment.
|
|
315
318
|
|
|
316
319
|
### all (default)
|
|
317
320
|
|
|
@@ -59,8 +59,8 @@ The script:
|
|
|
59
59
|
3. Discovers the thread grouping column (`conversation_id` or `thread_id`)
|
|
60
60
|
4. Loads last-seen ROWID (or defaults to 0 for first sync)
|
|
61
61
|
5. Finds threads with new messages since last sync (up to 500), using both
|
|
62
|
-
timestamp and ROWID to catch late-arriving emails (emails downloaded after
|
|
63
|
-
|
|
62
|
+
timestamp and ROWID to catch late-arriving emails (emails downloaded after a
|
|
63
|
+
delay may have `date_received` before the last sync timestamp, but their
|
|
64
64
|
ROWID will be higher than the last-seen ROWID)
|
|
65
65
|
6. For each thread: fetches messages, batch-fetches recipients and attachment
|
|
66
66
|
metadata, parses `.emlx` files for full email bodies (falling back to
|
|
@@ -128,29 +128,29 @@ recruitment-related.
|
|
|
128
128
|
|
|
129
129
|
For each candidate found in a recruitment email, extract:
|
|
130
130
|
|
|
131
|
-
| Field
|
|
132
|
-
|
|
|
133
|
-
| **Name**
|
|
134
|
-
| **Title**
|
|
135
|
-
| **Rate**
|
|
136
|
-
| **Availability**
|
|
137
|
-
| **English**
|
|
138
|
-
| **Location**
|
|
139
|
-
| **Source agency**
|
|
140
|
-
| **Recruiter**
|
|
141
|
-
| **CV path**
|
|
142
|
-
| **Skills**
|
|
143
|
-
| **Gender**
|
|
144
|
-
| **Summary**
|
|
145
|
-
| **Role**
|
|
146
|
-
| **Req**
|
|
147
|
-
| **Internal/External
|
|
148
|
-
| **Model**
|
|
149
|
-
| **Current title**
|
|
150
|
-
| **Email**
|
|
151
|
-
| **Phone**
|
|
152
|
-
| **LinkedIn**
|
|
153
|
-
| **Also known as**
|
|
131
|
+
| Field | Source | Required |
|
|
132
|
+
| --------------------- | ------------------------------------------------------------ | ------------------- |
|
|
133
|
+
| **Name** | Filename, email body, CV | Yes |
|
|
134
|
+
| **Title** | Email body, CV — the candidate's professional title/function | Yes |
|
|
135
|
+
| **Rate** | Email body (e.g. "$120/hr", "€80/h") | If available |
|
|
136
|
+
| **Availability** | Email body (e.g. "1 month notice", "immediately") | If available |
|
|
137
|
+
| **English** | Email body (e.g. "B2", "Upper-intermediate") | If available |
|
|
138
|
+
| **Location** | Email body, CV | If available |
|
|
139
|
+
| **Source agency** | Sender domain → Organization | Yes |
|
|
140
|
+
| **Recruiter** | Email sender or CC'd recruiter | Yes |
|
|
141
|
+
| **CV path** | Attachment directory | If available |
|
|
142
|
+
| **Skills** | Email body, CV | If available |
|
|
143
|
+
| **Gender** | Name, pronouns, recruiter context | If identifiable |
|
|
144
|
+
| **Summary** | Email body, CV | Yes — 2-3 sentences |
|
|
145
|
+
| **Role** | Internal requisition profile being hired against | If available |
|
|
146
|
+
| **Req** | Requisition ID from hiring system | If available |
|
|
147
|
+
| **Internal/External** | Whether candidate is internal or external | If available |
|
|
148
|
+
| **Model** | Engagement model (B2B, Direct Hire, etc.) | If available |
|
|
149
|
+
| **Current title** | CV or email body | If available |
|
|
150
|
+
| **Email** | Email body, CV, signature | If available |
|
|
151
|
+
| **Phone** | Email body, CV, signature | If available |
|
|
152
|
+
| **LinkedIn** | Email body, CV | If available |
|
|
153
|
+
| **Also known as** | Alternate name spellings or transliterations | If available |
|
|
154
154
|
|
|
155
155
|
### Determining Gender
|
|
156
156
|
|
|
@@ -428,4 +428,5 @@ produces a full framework-aligned assessment.
|
|
|
428
428
|
- [ ] No duplicate candidate notes created
|
|
429
429
|
- [ ] Key strategic insights added to `Insights.md` where warranted
|
|
430
430
|
- [ ] Skills tagged using framework skill IDs where possible
|
|
431
|
-
- [ ] Gender field populated only from explicit pronouns/titles (never
|
|
431
|
+
- [ ] Gender field populated only from explicit pronouns/titles (never
|
|
432
|
+
name-inferred)
|
|
@@ -63,12 +63,12 @@ skill's directory.
|
|
|
63
63
|
|
|
64
64
|
For every changed skill file, determine the type of change:
|
|
65
65
|
|
|
66
|
-
| Type
|
|
67
|
-
|
|
|
68
|
-
| `added`
|
|
69
|
-
| `modified`
|
|
70
|
-
| `removed`
|
|
71
|
-
| `renamed`
|
|
66
|
+
| Type | Description |
|
|
67
|
+
| ---------- | ---------------------------------------------------- |
|
|
68
|
+
| `added` | New skill created that doesn't exist upstream |
|
|
69
|
+
| `modified` | Existing skill updated (workflow, checklists, tools) |
|
|
70
|
+
| `removed` | Skill deleted from the installation |
|
|
71
|
+
| `renamed` | Skill directory or file renamed |
|
|
72
72
|
|
|
73
73
|
For **modified** skills, read the current file and the previous version to
|
|
74
74
|
identify what specifically changed:
|