Skip to content

mihir20/introspect

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introspect

CLI tools to extract your completed work — Linear tickets and merged GitHub pull requests — within a configurable date range. Outputs to console table, JSON, and CSV.

Built with Go (standard library only, zero external dependencies).

Tools

Package Description API
linear/ Completed Linear issues assigned to you Linear GraphQL
pull_requests/ Merged GitHub PRs authored by you GitHub GraphQL

Prerequisites

Setup

  1. Clone the repo and create a .env file at the root:
export LINEAR_API_KEY='lin_api_...'
export GITHUB_TOKEN='ghp_...'
  1. Source it before running:
source .env

Usage

# Run the Linear extractor (default)
make run

# Run the GitHub PR extractor
make run PKG=pull_requests

# Build all packages
make build-all

# Build and run a specific package
make build-run PKG=linear

All Make Targets

Command Description
make run PKG=<name> Run a package directly (default: linear)
make build PKG=<name> Build binary to bin/<name>
make build-run PKG=<name> Build then execute
make build-all Build all packages
make clean Remove bin/, JSON, and CSV output files
make fmt Format all Go code
make deps Tidy go modules
make help Show available commands

Output

Each extractor produces:

  1. Console — formatted table with summary statistics
  2. JSON — full structured data (*_completed_tickets.json / *_merged.json)
  3. CSV — tabular export (*_completed_tickets.csv / *_merged.csv)

Configuration

  • Date range — hardcoded constants at the top of each extractor's source file
  • Output filenames — set in main() of each extractor

About

CLI tool to help generate self review for appraisal cycle

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors