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

@junu0723/tix

v0.2.1

Published

AI-powered CLI that turns any text into actionable Linear or GitHub issues

Readme

tix

AI-powered CLI that turns any text into actionable tickets.

Feed it meeting transcripts, notes, braindumps, to-do lists — it extracts actionable items and creates Linear or GitHub issues automatically. Designed for AI agents, with a web dashboard for humans.

Try It

npx @junu0723/tix parse --text "Fix the login bug by Friday, add dark mode support" --human

Install

npm install -g @junu0723/tix
tix --help

Prerequisites

Optional

Quick Start

# 1. Configure credentials
tix setup

# 2. Create a project (auto-detects GitHub repo and Linear team)
tix project create my-project

# 3. Add project context for smarter tickets
tix project update my-project \
  --description "E-commerce platform" \
  --stack "Next.js, Prisma, PostgreSQL" \
  --philosophy "Ship fast, user experience over features"

# 4. Parse any text into tickets
tix parse meeting.txt --human

# 5. Parse and create issues in one step
tix parse meeting.txt --push

CLI Reference

All commands output structured JSON to stdout. Status messages go to stderr.

tix parse

Parse any text into tickets. Accepts transcripts, notes, to-do lists, braindumps — anything with actionable items.

When a project is active, its context (description, stack, status, philosophy) is used for smarter ticket generation. Duplicate issues are automatically checked before creation.

tix parse meeting.txt                        # from file
cat notes.md | tix parse                     # from stdin
tix parse --text "Fix the login bug"         # inline text
tix parse meeting.txt --push                 # parse + create in Linear
tix parse meeting.txt --push --target github # parse + create in GitHub
tix parse meeting.txt --push --skip-dedup    # skip duplicate check
tix parse meeting.txt --pretty               # pretty JSON output
tix parse meeting.txt --human                # human-readable output

Output includes analysis stats:

{
  "tickets": [{ "title": "...", "description": "...", "priority": 1, "labels": ["bug"] }],
  "count": 3,
  "stats": { "duration_ms": 15800, "input_tokens": 520, "output_tokens": 220, "cost_usd": 0.1166 }
}

tix create

Create issues directly from JSON or flags. Checks for duplicates before creating.

tix parse notes.txt | jq '.tickets' | tix create         # pipe from parse
tix create tickets.json                                    # from JSON file
tix create --title "Fix bug" --priority 2 --labels "bug"   # from flags
tix create --target github                                 # target GitHub
tix create --skip-dedup                                    # skip duplicate check

tix project

Manage projects with per-project output targets and context. Project context (description, stack, philosophy) is injected into the AI prompt for project-specific ticket generation.

tix project create my-app
tix project update my-app --description "..." --stack "..." --philosophy "..."
tix project use my-app
tix project list --pretty
tix project show --pretty
tix project delete old-project --yes

tix setup

Configure API credentials.

tix setup                                                  # interactive
tix setup --linear-api-key KEY --linear-team-id ID         # Linear
tix setup --github-token TOKEN --github-repo owner/repo    # GitHub
tix setup --global                                         # save to ~/.tix/.env

tix status · tix history · tix dashboard

tix status                       # show config and readiness
tix history list --pretty        # view parsing history
tix history clear --yes          # clear history
tix dashboard                    # launch web UI at http://127.0.0.1:8000
tix dashboard --port 3000

Dashboard

The web UI at tix dashboard:

  • Paste text or upload files (.txt, .md, .srt, .vtt, .csv)
  • Elapsed time counter during analysis with cancel button
  • Edit tickets (title, description, priority, labels) before creating
  • Project selector with context editor
  • Target selector (Linear / GitHub)
  • History with creation status tracking

Duplicate Checking

Before creating issues, tix automatically checks for duplicates:

  • GitHub target → fetches open issues via gh CLI
  • Linear target → fetches active issues via GraphQL API
  • Matches by title similarity (substring match + word overlap)
  • Duplicates are skipped with a warning
  • Use --skip-dedup to bypass

Integration Backends

| Integration | Backend | |------------|---------| | Claude (parsing) | claude CLI subprocess | | GitHub (issues) | gh CLI (preferred) or REST API via GITHUB_TOKEN | | Linear (issues) | GraphQL API via LINEAR_API_KEY |

Environment Variables

| Variable | Required for | Description | |----------|-------------|-------------| | LINEAR_API_KEY | Linear issues | Linear API key | | LINEAR_TEAM_ID | Linear issues | Linear team UUID (or set per-project) | | GITHUB_TOKEN | GitHub (API mode) | GitHub token (not needed with gh CLI) | | GITHUB_REPO | GitHub | owner/repo (or per-project, or auto-detected from git) |

Credentials load from .env (local) or ~/.tix/.env (global).

Claude Code Skill

tix is available as a Claude Code skill. Install it to let Claude Code use tix automatically when you ask to create tickets.

npx skills add junu0723/tix -g -y

# Then just ask Claude Code:
# "turn these meeting notes into Linear issues"
# "create tickets from this braindump"

Uninstall

npm uninstall -g @junu0723/tix
rm -rf ~/.tix

Development

git clone https://github.com/junu0723/tix.git
cd tix
npm install
node bin/tix.js status
node bin/tix.js dashboard

License

MIT