Skip to content

Latest commit

 

History

History
180 lines (146 loc) · 4.42 KB

File metadata and controls

180 lines (146 loc) · 4.42 KB

@sunilp-org/jam-cli

This file was auto-generated by jam context init. Edit it freely — Jam reads it on every ask / chat invocation.

Overview

Jam — developer-first AI assistant CLI for the terminal. Ask questions, explain code, review diffs, generate patches, and run agentic tasks powered by Ollama.

Property Value
Language TypeScript
File extensions .ts / .tsx
Framework CLI application
Package manager npm
Entry point {"jam":"./dist/index.js"}
Test framework Vitest

Scripts

npm run build  # tsc --project tsconfig.build.json
npm run dev  # tsx src/index.ts
npm run typecheck  # tsc --noEmit
npm run lint  # eslint src --ext .ts,.tsx
npm run format  # prettier --write "src/**/*.{ts,tsx}"
npm run test  # vitest run
npm run test:watch  # vitest
npm run test:coverage  # vitest run --coverage
npm run clean  # rm -rf dist

Directory Structure

├── src/
│   ├── commands/
│   │   ├── ask.ts
│   │   ├── auth.ts
│   │   ├── chat.ts
│   │   ├── commit.test.ts
│   │   ├── commit.ts
│   │   ├── completion.ts
│   │   ├── config.ts
│   │   ├── context.ts
│   │   ├── diff.ts
│   │   ├── doctor.ts
│   │   ├── explain.ts
│   │   ├── history.ts
│   │   ├── models.ts
│   │   ├── patch.ts
│   │   ├── review.test.ts
│   │   ├── review.ts
│   │   ├── run.ts
│   │   └── search.ts
│   ├── config/
│   │   ├── defaults.ts
│   │   ├── loader.test.ts
│   │   ├── loader.ts
│   │   └── schema.ts
│   ├── providers/
│   │   ├── base.ts
│   │   ├── factory.ts
│   │   ├── ollama.test.ts
│   │   └── ollama.ts
│   ├── storage/
│   │   ├── history.test.ts
│   │   └── history.ts
│   ├── tools/
│   │   ├── apply_patch.ts
│   │   ├── context-tools.ts
│   │   ├── git_diff.ts
│   │   ├── git_status.ts
│   │   ├── index.ts
│   │   ├── list_dir.test.ts
│   │   ├── list_dir.ts
│   │   ├── read_file.test.ts
│   │   ├── read_file.ts
│   │   ├── registry.test.ts
│   │   ├── registry.ts
│   │   ├── run_command.ts
│   │   ├── search_text.test.ts
│   │   ├── search_text.ts
│   │   ├── types.ts
│   │   ├── write_file.test.ts
│   │   └── write_file.ts
│   ├── types/
│   │   └── marked-terminal.d.ts
│   ├── ui/
│   │   ├── chat.tsx
│   │   ├── logo.ts
│   │   └── renderer.ts
│   ├── utils/
│   │   ├── context.ts
│   │   ├── errors.ts
│   │   ├── logger.test.ts
│   │   ├── logger.ts
│   │   ├── secrets.ts
│   │   ├── stream.test.ts
│   │   ├── stream.ts
│   │   ├── workspace.test.ts
│   │   └── workspace.ts
│   └── index.ts
├── CHANGELOG.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── JAM.md
├── LICENSE
├── package-lock.json
├── package.json
├── README.md
├── SECURITY.md
├── tsconfig.build.json
├── tsconfig.eslint.json
├── tsconfig.json
└── vitest.config.ts

Key Dependencies

  • chalk
  • commander
  • cosmiconfig
  • ink
  • ink-text-input
  • marked
  • marked-terminal
  • minimatch
  • react
  • zod

Dev Dependencies

  • @types/node
  • @types/react
  • @typescript-eslint/eslint-plugin
  • @typescript-eslint/parser
  • @vitest/coverage-v8
  • eslint
  • eslint-config-prettier
  • msw
  • prettier
  • tsx
  • typescript
  • undici
  • vitest

Architecture Notes

Coding Conventions

Important Context

Frequently Accessed Files

Auto-updated by Jam based on your usage patterns. These are the files most frequently examined when answering questions. Jam will prioritize searching these locations.

  • src/commands/ask.ts (1x)