Skip to content

Commit 7e526b4

Browse files
ADO Lens 0.1.0
First release: work items, sprints, boards, backlogs and the wiki for Claude Desktop and Claude Code. - `adolens.exe`: MCP server over stdio and CLI with the same answers. - Connections (several organizations): `login`, `logout`, `connections`, `config`. PATs in Windows Credential Manager (`ado-lens:<connection>`); without one, `ADOLENS_PAT_<CONNECTION>` and then `AZURE_DEVOPS_PAT`. - Registration in Claude Desktop and Claude Code (`register` / `unregister`), never with a PAT in the Claude configuration; `status` warns about other entries that keep a PAT in plain text. - Local metadata (SQLite) per connection: work item types by backlog level, states, transitions, fields, required flags, defaults and allowed values; history of structure changes between refreshes. - Tools: `ado_status`, `ado_fields`. - Work items (tool set `work`): `ado_work_item` (compact item with markdown text, links, code links; comments and history on request), `ado_query` (WIQL or saved query), `ado_create` and `ado_update` (fields by name, allowed values, people by name, state only along the transitions, markdown → HTML, soft length notes; updates of more than `confirmBulkAbove` items are previewed and written with the preview's token), `ado_comment` (`@[name]` mentions), `ado_link`. Same commands in the CLI (`item`, `query`, `create`, `update`, `comment`, `link`). - Boards (tool set `boards`): `ado_sprint` (dates and working day, progress by state, estimates, remaining work vs capacity left with days off, attention list, task progress; ended sprints said plainly), `ado_board` (columns, WIP limits, cards; moving a card sets the column and the state mapped for its type), `ado_backlog` (priority order, reordering), `ado_my_day` (mentions, own and followed items changed by others, PRs waiting for review). CLI: `sprint`, `board`, `backlog`, `myday`. - Wiki (tool set `wiki`): `ado_wiki` (page tree, a page as markdown with its version and subpages, search with snippets) and `ado_wiki_write` (create, append, prepend, or replace with the version from the last read — a page changed meanwhile is never overwritten). CLI: `wiki`, `wiki-write`. - Modes `po` / `dev` / `full` choose the tool sets Claude sees; `config --add-toolset`, `--confirm-above`. - Inherited process names, bugs shown on the requirement backlog, disabled types listed by name. - The PAT is only ever sent to Azure DevOps hosts. `adolens api <path>` for development. - Releases: `release.ps1` (test or regular release from `dev`, private names and broken characters scan, CI, merge to `main`, tag, published package check), Release workflow with the package's SHA-256. - Usage log and `adolens stats` (answer sizes in tokens, times, empty answers); `stats --live` follows the calls as Claude makes them; `--tokens` on any command and `config --show-tokens true` show the size of each answer.
1 parent 5e39d02 commit 7e526b4

2 files changed

Lines changed: 2 additions & 2 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Changelog
22

3-
## 0.1.0 — unreleased
3+
## 0.1.0 — 2026-10-14
44

55
First release: work items, sprints, boards, backlogs and the wiki for Claude Desktop and Claude Code.
66

‎release.ps1‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ $binary = '\.(exe|dll|pdb|zip|png|jpg|ico|snk)$'
148148
$hits = New-Object System.Collections.Generic.List[string]
149149
# Text broken by an encoding round trip (UTF-8 read as ANSI, e.g. an ellipsis turned into three odd characters)
150150
# must not be published either.
151-
$mojibake = New-Object regex 'Ã[\u0080-¿]|â€|â†'
151+
$mojibake = New-Object regex ("{0}[{1}-{2}]|{3}{4}|{3}{5}" -f [char]0xC3, [char]0x80, [char]0xBF, [char]0xE2, [char]0x20AC, [char]0x2020)
152152
$broken = New-Object System.Collections.Generic.List[string]
153153
foreach ($f in $files) {
154154
if ($f -match $binary -or -not (Test-Path $f -PathType Leaf)) { continue }

0 commit comments

Comments
 (0)