@skillsmith/core 0.12.0 → 0.12.1

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/CHANGELOG.md CHANGED
@@ -4,9 +4,19 @@ All notable changes to `@skillsmith/core` are documented here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## v0.12.1
8
+
9
+ - **Fix**: logout/whoami now detect JWT device-code sessions (#2578)
10
+ - **Fix**: new `clearCredentials()` export (`config/token-credentials.ts`) clears a stored
11
+ JWT device-code session (access/refresh token, expiry) from both the config file and the
12
+ OS keyring `refresh-token` entry — previously there was no way to end a JWT session at all;
13
+ `clearApiKey()` only ever touched the separate legacy `apiKey` field. (SMI-6235)
14
+ - **Docs**: README's framing sentence updated from the "lifecycle layer" tagline to a plain
15
+ descriptive sentence ("a registry for sharing, scanning, and tracking agent skills across
16
+ teams") as part of the site-wide positioning reframe. Wording-only. (SMI-6194)
17
+
7
18
  ## v0.12.0
8
19
 
9
- - **Cadence**: Mechanical cadence alignment (no changes since v0.11.7).
10
20
  - **Feature**: new `resolveSessionTier` client (`sync/license-status-client.ts`, SMI-6098) —
11
21
  authenticates the stored device-login session against `/license-status` (proactively refreshing
12
22
  via the existing `resolveAccessToken` helper) so the MCP server can resolve a real subscription
package/README.md CHANGED
@@ -2,23 +2,22 @@
2
2
 
3
3
  Core library for Skillsmith — database operations, search, caching, security, analytics, and **multi-language codebase analysis** for agent skill management.
4
4
 
5
- Part of Skillsmith: a lifecycle layer for agent skills across teams.
5
+ Part of Skillsmith: a registry for sharing, scanning, and tracking agent skills across teams.
6
6
 
7
7
  ## Contents
8
8
 
9
- - [What's New](#whats-new-in-v0120)
9
+ - [What's New](#whats-new-in-v0121)
10
10
  - [Installation](#installation)
11
11
  - [Quick Start](#quick-start)
12
12
  - [Features](#features)
13
13
  - [Exports](#exports)
14
14
 
15
- ## What's New in v0.12.0
15
+ ## What's New in v0.12.1
16
16
 
17
- - **Security-status reporting unified**: CLI and MCP now derive security-scan status (pass/fail, risk score, findings count) from one shared `deriveSecuritySummaryFromApiSkill`/`deriveSecuritySummaryFromSkillRow`, instead of two independently-maintained copies that could disagree on the same skill.
18
- - **`skill_compare` reuses `get_skill`'s resolution**: new shared `resolveSkillApiFirst()` fixes compare only ever hitting the local SQLite cache (no longer kept in sync with the remote-first registry), which made real, searchable skills report "not found."
19
- - **New two-level owned-lock primitive** (`config/owned-lock`) replacing the single-level, age-based config lock closes a case where two concurrent reclaimers could both treat a stale lock as safe to unlink.
20
- - **Private-registry install support**: `SkillInstallationService.installFromContent()` installs an already-resolved skill (e.g. from a private registry) through the same scan/write/manifest pipeline as a GitHub-fetched install.
21
- - **Quiet mode covers one more warning path**: `SKILLSMITH_QUIET` now also suppresses the WASM-SQLite-driver fallback notice, previously printed unconditionally.
17
+ - **New `resolveSessionTier` client** (`sync/license-status-client.ts`): authenticates a stored `skillsmith login` session against `/license-status` so the MCP server can resolve a real subscription tier without a separately-configured `SKILLSMITH_API_KEY`, instead of silently falling back to `community`.
18
+ - **Scanner: bundled-file scan expanded to operational code** (Gap 8 of the ClawHavoc remediation): the indexer now reads `scripts/`, `src/`, and `bin/` alongside `SKILL.md`, closing a blind spot where a backdoor buried mid-function in working operational code was structurally invisible.
19
+ - **Scanner fix**: the markdown indented-code-block heuristic was silently downgrading real non-markdown source findings from `high` to `medium` `analyzeMarkdownContext`/`SecurityScanner.scan()` now take an explicit `isMarkdown` parameter instead of assuming every scanned file is documentation.
20
+ - **Five new scanner detectors** (SMI-6033 Waves 3–4): `gatekeeper_bypass` (macOS quarantine-attribute stripping), `archive_evasion` (password-protected archives correlated with a fetch), a paste/snippet-host reputation detector, an encoded-payload decode-and-recursively-rescan detector, and `decoy_misdirection` (a fetch domain that doesn't match a nearby vendor-authority claim) plus a stronger multi-signal co-signal escalation model so several individually sub-threshold findings can now jointly escalate a weak `code_execution` finding to critical.
22
21
 
23
22
  See [CHANGELOG.md](./CHANGELOG.md) for previous releases.
24
23