npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@autosk/merge-to-current

v0.1.1

Published

Single-step workflow: merge the autosk-managed branch `autosk/<task-id>` into the project's CURRENT branch (non-isolated, fast-forward when possible).

Downloads

229

Readme

@autosk/merge-to-current

A single-step autoskd v2 workflow that merges a task's autosk-managed branch autosk/<task-id> into the branch the operator currently has checked out (the CURRENT branch), running non-isolated in the project's working tree.

It is the v2 port of the v1 merge-to-main export, with one change: the destination is no longer the mainline branch (main/master) but whatever HEAD points at — there is no main/master detection and no branch switch.

The workflow

merge ──▶ done      (the branch landed cleanly on the current branch)
   └────▶ human     (rolled back; a human must take over)

| Step | Kind | Notes | | ------- | -------------------------- | ------------------------------------------------------------------- | | merge | piAgent (name merge) | first/only step; integrates autosk/<task-id> into the current branch |

done and human are terminal/park statuses the agent transitions to directly (they are always-available targets — there is no separate statusStep).

  • Isolation: none — the workflow has no isolation field, so it runs in the project root (tag: "none") and operates directly on the operator's working tree.
  • Thinking: the merge agent runs at thinking: "high" (matches the v1 export's agent params).

What the merge step does

The prompt (prompts/merge.md) drives git directly and never touches the network (no fetch/pull/push):

  1. Verify the task branch autosk/<task-id> exists.
  2. Auto-commit any pending edits in the task's worktree onto the task branch first (the worktree is located via git worktree list --porcelain). These auto-commits are intentionally preserved even if the merge later rolls back.
  3. Snapshot the current branch (DEST = git symbolic-ref --short HEAD) and refuse if HEAD is detached or the project root has a dirty tree. Refuse too if the current branch is the task branch.
  4. Overlap analysis between the two diff sets; any non-trivial reconciliation parks the task for a human before any merge work.
  5. Merge: fast-forward (git merge --ff-only) when the current branch has not moved since the fork; otherwise a --no-ff merge commit (git merge --no-commit --no-ff, with only trivial conflict resolutions allowed).
  6. On success the merge lands on the current branch and the task transitions to done; on any failure the current branch is reset to its starting SHA and the task transitions to human.

Because the destination is the current branch, DEST is both the merge target and the rollback target — HEAD never leaves it.

Discovery

This package is an npm extension (declared via package.json#autosk.extensions). It is not part of the first-run bootstrap (only feature-dev is), so install it explicitly to make the workflow available:

autosk install @autosk/merge-to-current     # add to ~/.autosk/settings.json + install
autosk enroll <task-id> --workflow merge-to-current

A project- or global-level extension that registers a workflow of the same name overrides the npm one (first-registered wins).

Configuration

This package exposes no per-step config knobs of its own — the agent behaviour is configured on the inline @autosk/pi-agent step value (model, thinking, extra args, …) inside mergeToCurrentWorkflow(). To customise, copy this extension into ~/.autosk/extensions/ (or your project's .autosk/extensions/) and edit the piAgent({...}) call or the prompt under prompts/; your copy then overrides the npm one.

Exports

  • default export — the extension factory (registers the workflow, whose single step carries the inline merge agent).
  • mergeToCurrentWorkflow()WorkflowDefinition.