Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 17 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# vale-agentic [![Build Status](https://img.shields.io/github/actions/workflow/status/HeyItsGilbert/vale-agentic/test.yaml?branch=main)](https://github.com/HeyItsGilbert/vale-agentic/actions/workflows/test.yaml) ![Vale version](https://img.shields.io/badge/vale-%3E%3D%20v1.7.0-blue.svg) ![license](https://img.shields.io/github/license/mashape/apistatus.svg)

A [Vale](https://github.com/errata-ai/vale) style package that helps you write more assertive, action-oriented language by identifying and suggesting alternatives to communal phrasing.
A [Vale](https://github.com/errata-ai/vale) style package that helps you write more assertive, action-oriented language by identifying and suggesting alternatives to communal phrasing. Now with **167 comprehensive patterns** (86 communal detections + 81 agentic alternatives) for maximum career impact.

## What is Agentic Language?

Expand Down Expand Up @@ -125,18 +125,24 @@ vale --filter='agentic.*' example.md
## Rules Reference

### agentic.communal
Identifies words and phrases that diminish personal agency:
- `improved`, `helped`, `managed to`, `eventually`
- `team player`, `friendly`, `maybe`
- `seems`, `despite`, `actually`
Identifies words and phrases that diminish personal agency (86 patterns):
- **Passive constructions**: `tried to`, `attempted to`, `managed to`, `was able to`, `happened to`
- **Hedge words**: `maybe`, `perhaps`, `possibly`, `I think`, `I believe`, `I guess`
- **Minimizing language**: `just`, `simply`, `only`, `merely`, `somehow`, `kind of`, `sort of`
- **Self-deprecating**: `lucky`, `fortunate`, `by chance`, `accidentally`, `surprisingly`
- **Apologetic**: `sorry`, `unfortunately`, `sadly`, `I'm afraid`, `wish I could`
- **Generic descriptors**: `nice`, `friendly`, `sweet`, `accommodating`, `understanding`
- **Permission-seeking**: `I hope`, `would it be okay`, `if possible`, `would you mind`
- **Collaborative downplay**: `team effort`, `group achievement`, `shared responsibility`

### agentic.communal_alternative
Suggests stronger alternatives:
- `help` → `assist`
- `caring` → `dynamic`
- `thoughtful` → `energetic`
- `facilitated` → `lead`
- `collaborated` → `created`
Suggests stronger alternatives (81 mappings):
- **Agency**: `tried to` → `executed`, `attempted to` → `completed`, `managed to` → `accomplished`
- **Confidence**: `I think` → `I recommend`, `perhaps` → `recommend`, `maybe` → `suggest`
- **Ownership**: `team effort` → `I coordinated`, `group achievement` → `I contributed to`
- **Professionalism**: `nice` → `professional`, `accommodating` → `adaptable`, `understanding` → `empathetic`
- **Directness**: `unfortunately` → `however`, `sorry` → `recommend`, `I hope` → `I recommend`
- **Strength**: `lucky` → `strategic`, `by chance` → `through analysis`, `simply` → `directly`

## Troubleshooting

Expand Down
81 changes: 80 additions & 1 deletion agentic/communal.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ message: Consider replacing '%s'. It is communal vs agentic.
level: warning
ignorecase: true
tokens:
# Original words
- improved
- team player
- friendly
Expand All @@ -18,4 +19,82 @@ tokens:
- helped to
- managed to
- eventually
- actually
- actually
# Passive/Hedged Accomplishments
- tried to
- attempted to
- happened to
- ended up
- was able to
- got to
- had the opportunity to
- found myself
- was chosen to
- was asked to
# Minimizing Personal Contribution
- just
- simply
- only
- merely
- somehow
- a bit
- kind of
- sort of
- a little
- somewhat
# Uncertainty and Hedge Words
- perhaps
- possibly
- might
- could be
- appears
- tends to
- I think
- I believe
- I guess
- I suppose
# Self-Deprecating Language
- lucky
- fortunate
- stumbled upon
- happened to discover
- by chance
- accidentally
- surprisingly
- unexpectedly
# Collaborative Downplay
- team effort
- group achievement
- collective success
- shared responsibility
- joint venture
- mutual benefit
# Generic/Vague Descriptors
- nice
- pleasant
- sweet
- kind
- gentle
- soft-spoken
- agreeable
- accommodating
- understanding
- patient
# Apologetic Language
- sorry
- apologize
- regret
- unfortunately
- sadly
- I'm afraid
- hate to say
- wish I could
# Permission-Seeking Language
- I hope
- would it be okay
- if it's alright
- could we perhaps
- might we consider
- would you mind
- if possible
- if that's okay
76 changes: 75 additions & 1 deletion agentic/communal_alternative.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ level: warning
ignorecase: true
# swap maps tokens in form of bad: good
swap:
# Original mappings
help: assist
SME: Service owner
caring: dynamic
Expand All @@ -13,4 +14,77 @@ swap:
tireless: bold
helped: drove
facilitated: lead
collaborated: created
collaborated: created
# Passive/Hedged Accomplishments
"tried to": executed
"attempted to": completed
"happened to": identified
"ended up": delivered
"was able to": accomplished
"got to": selected to
"found myself": positioned myself as
"was chosen to": earned selection for
"was asked to": was selected to
# Minimizing Words
simply: directly
merely: specifically
somehow: strategically
"kind of": specifically
"sort of": precisely
"a little": measurably
somewhat: substantially
# Uncertainty
perhaps: recommend
possibly: likely
"could be": represents
appears: indicates
"tends to": consistently
"I think": "I recommend"
"I believe": "I am confident"
"I guess": "I estimate"
"I suppose": "I conclude"
# Self-Deprecating
lucky: strategic
fortunate: well-prepared
"stumbled upon": discovered
"happened to discover": researched and found
"by chance": through analysis
accidentally: during investigation
surprisingly: notably
unexpectedly: remarkably
# Collaborative Downplay
"team effort": "I coordinated"
"group achievement": "I contributed to"
"collective success": "I helped achieve"
"shared responsibility": "I managed"
"joint venture": "I partnered on"
"mutual benefit": "I created value for"
# Generic Descriptors
nice: professional
pleasant: engaging
sweet: thoughtful
kind: supportive
gentle: diplomatic
"soft-spoken": articulate
agreeable: collaborative
accommodating: adaptable
understanding: empathetic
patient: persistent
# Apologetic Language
sorry: recommend
apologize: acknowledge
regret: propose
unfortunately: however
sadly: significantly
"I'm afraid": "I must note"
"hate to say": "must acknowledge"
"wish I could": "recommend we"
# Permission-Seeking
"I hope": "I recommend"
"would it be okay": "I propose"
"if it's alright": "I suggest"
"could we perhaps": "I recommend we"
"might we consider": "we should evaluate"
"would you mind": "please consider"
"if possible": "I recommend"
"if that's okay": "I propose"
9 changes: 9 additions & 0 deletions features/rules.feature
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,12 @@ Feature: Rules
fail.md:2:50:agentic.communal:Consider replacing 'team player'. It is communal vs agentic.
fail.md:3:14:agentic.communal_alternative:Consider using 'energetic' instead of 'thoughtful'
"""

Scenario: Expanded vocabulary catches new patterns
When I test "expanded"
Then the output should contain "tried to"
And the output should contain "executed"
And the output should contain "unfortunately"
And the output should contain "however"
And the output should contain "team effort"
And the output should contain "I coordinated"
6 changes: 6 additions & 0 deletions fixtures/expanded/.vale.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
StylesPath = ../../

MinAlertLevel = suggestion

[*.md]
BasedOnStyles = agentic
7 changes: 7 additions & 0 deletions fixtures/expanded/fail.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
I tried to complete the project but unfortunately I was just lucky.

Perhaps I'm simply being accommodating when I think our team effort was nice.

I hope it's alright that I was patient with the group achievement.

I attempted to help but ended up being somewhat apologetic about the results.
5 changes: 5 additions & 0 deletions fixtures/expanded/pass.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
I executed the project successfully and strategically positioned myself for success.

I recommend we adopt this approach since my analysis shows clear value.

I delivered outstanding results and created substantial impact for the organization.