<feed xmlns='http://www.w3.org/2005/Atom'>
<title>npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/skills, branch v2.3.0</title>
<subtitle>Personal mirror of DanConwayDev/ngit-cli on git.upleb.uk
</subtitle>
<id>https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/atom?h=v2.3.0</id>
<link rel='self' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/atom?h=v2.3.0'/>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/'/>
<updated>2026-03-05T15:18:43+00:00</updated>
<entry>
<title>docs(skill): improve nostr repo detection guidance</title>
<updated>2026-03-05T15:18:43+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T15:18:43+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=09c299ebb1e04bc9d17817371f3e3061fb450443'/>
<id>urn:sha1:09c299ebb1e04bc9d17817371f3e3061fb450443</id>
<content type='text'>
Use git remote -v as primary check; clarify that ngit repo always
exits 0 and is_nostr_repo:false can be a cold-cache false negative.
</content>
</entry>
<entry>
<title>feat(cover-note): add kind-1624 cover notes for PRs, patches, and issues</title>
<updated>2026-03-05T14:23:07+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T14:19:49+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=37244449d6d0d58bb639f181bd15092de1acaaee'/>
<id>urn:sha1:37244449d6d0d58bb639f181bd15092de1acaaee</id>
<content type='text'>
Implements experimental kind-1624 cover note events:

- KIND_COVER_NOTE constant and process_cover_note() in git_events.rs;
  replaceable semantics (latest created_at, hex-id tiebreak), author or
  maintainer only
- kind-1624 events fetched alongside labels in the fetch pipeline;
  cover_notes count added to FetchReport display
- ngit pr/issue view: cover note displayed in place of description with
  a clear 'Cover Note:' header; maintainer-authored notes identify the
  author; original description shown only with --comments; cover_note
  object included in --json output
- ngit pr set-cover-note / ngit issue set-cover-note: publish a
  kind-1624 event; nostr: mentions in --body converted to q/p tags via
  tags_from_content (same rules as issue --body)
- Fix pre-existing clippy::too_many_lines on repo/mod.rs show_info
</content>
</entry>
<entry>
<title>feat(json): emit nevent1 bech32 IDs in --json output</title>
<updated>2026-03-05T13:31:35+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T13:31:35+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=609f3c3db02d437222e2c8e171189179d06c3e9c'/>
<id>urn:sha1:609f3c3db02d437222e2c8e171189179d06c3e9c</id>
<content type='text'>
All id and reply_to fields in --json output now use nevent1... bech32
encoding (with relay hint when available) instead of raw hex, making
them directly usable as nostr: URI references in --body text.

Update SKILL.md to document the nevent1 ID format and enforce use of
nostr:nevent1... URIs when cross-referencing events in body text.
</content>
</entry>
<entry>
<title>refactor(subject): standardise on subject over title in CLI and output</title>
<updated>2026-03-05T13:14:34+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T13:14:34+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=b143abb25d6ece32412629baa3e75e94d139979f'/>
<id>urn:sha1:b143abb25d6ece32412629baa3e75e94d139979f</id>
<content type='text'>
- JSON output fields renamed from title to subject in pr list/view
  and issue list/view
- Printed view output changed from Title: to Subject:
- ngit issue create --subject (alias --title)
- ngit send --subject (alias --title)
- Error messages and interactive prompts updated to match
</content>
</entry>
<entry>
<title>feat(subject): add pr/issue set-subject via NIP-32 kind-1985 labels</title>
<updated>2026-03-05T13:03:50+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T13:03:50+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=f3fcf863aae000964753f574b00e9fb9f5fcd452'/>
<id>urn:sha1:f3fcf863aae000964753f574b00e9fb9f5fcd452</id>
<content type='text'>
Adds the ability to update the displayed title of a PR or issue after
creation using a kind-1985 label event with the #subject namespace.
Only the author or a repository maintainer may set the subject. The
latest authorised event wins with tiebreak by lexicographically larger
event ID (NIP-1 replaceable event semantics). Branch names and commit
messages are never affected.

- Split get_labels() into process_labels() (additive #t) and
  process_subject() (replaceable-style #subject), with a shared
  get_labels_and_subject() entry point that processes both from a
  single pre-fetched slice of kind-1985 events
- All list/view/JSON display paths apply the subject override silently
- New ngit pr set-subject &lt;id&gt; --subject &lt;text&gt; command
- New ngit issue set-subject &lt;id&gt; --subject &lt;text&gt; command
</content>
</entry>
<entry>
<title>feat(status): add --reason to all pr and issue status commands</title>
<updated>2026-03-05T12:12:21+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T12:12:21+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=ad6c39abdc35603f58e9b71993b5632c976deac1'/>
<id>urn:sha1:ad6c39abdc35603f58e9b71993b5632c976deac1</id>
<content type='text'>
All status transitions (pr close/reopen/ready/draft, issue close/reopen/
resolved) now accept an optional --reason flag stored in the event content.
</content>
</entry>
<entry>
<title>feat(status): add pr draft, issue resolved, and --reason for issue close</title>
<updated>2026-03-05T12:08:56+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T12:02:09+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=b0ad2fd720d0cd335c07f22767844f571e3306ff'/>
<id>urn:sha1:b0ad2fd720d0cd335c07f22767844f571e3306ff</id>
<content type='text'>
Add `ngit pr draft &lt;id&gt;` to convert a PR back to draft (kind-1632).

Add `ngit issue resolved &lt;id&gt; [--reason &lt;text&gt;]` to mark an issue as
fixed (kind-1631 GitStatusApplied), distinct from close which signals
wontfix/duplicate/invalid.

Add `--reason &lt;text&gt;` to `ngit issue close` — stored in event content.

Also fix success/error message wording in pr_status and issue_status to
use consistent past-tense action strings.
</content>
</entry>
<entry>
<title>feat(label): add `ngit issue label` and `ngit pr label` commands</title>
<updated>2026-03-05T11:41:09+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T11:33:10+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=3ac5395b47c709c00f0072668dfdceb04f2d4974'/>
<id>urn:sha1:3ac5395b47c709c00f0072668dfdceb04f2d4974</id>
<content type='text'>
Publishes a NIP-32 kind-1985 label event referencing the target issue or
PR. Only the event author or a repository maintainer may apply labels.
Duplicate labels (already present via t-tags or prior kind-1985 events)
are silently skipped. The new event is saved to the local cache before
broadcasting so subsequent reads reflect the change immediately.

CLI:
  ngit issue label &lt;id&gt; --label &lt;L&gt; [--label &lt;L&gt;...]
  ngit pr label &lt;id&gt; --label &lt;L&gt; [--label &lt;L&gt;...]
</content>
</entry>
<entry>
<title>add `ngit account whoami` command</title>
<updated>2026-03-05T10:58:37+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T10:58:37+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=2f2819cc2365be07fedfd35ab3654b3607e29e76'/>
<id>urn:sha1:2f2819cc2365be07fedfd35ab3654b3607e29e76</id>
<content type='text'>
Shows currently logged-in account(s) with name and npub. When both a
local (repo-scoped) and global account are configured, displays both
with local marked as active. Supports --json (returns local, global,
and active objects each with name, npub, nip05, scope) and --offline
(reads from cache only, no network). Fixes doc_markdown clippy warning
in cli.rs.
</content>
</entry>
<entry>
<title>refine ngit skill: pr/issue command corrections</title>
<updated>2026-03-05T10:39:19+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T10:39:19+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=4d23e609ec3d6c25b5f5918fd317eef02a434efe'/>
<id>urn:sha1:4d23e609ec3d6c25b5f5918fd317eef02a434efe</id>
<content type='text'>
- ngit init: use user's preferred grasp server or fall back to defaults
- note git push / git push --force can update existing PRs
- prefer pr checkout over pr apply for agent use
- issue/pr comment: --reply-to accepts ID or nevent
- issue body supports markdown
- restore --verbose flag to reference table
- fix typos
</content>
</entry>
</feed>
