New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

hiresquire-cli

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

hiresquire-cli

HireSquire CLI - AI-powered candidate screening from the command line

latest
Source
npmnpm
Version
1.1.0
Version published
Weekly downloads
3
-97.39%
Maintainers
1
Weekly downloads
 
Created
Source

HireSquire CLI

AI-powered candidate screening from the command line

npm version License: MIT

HireSquire CLI enables AI agents and developers to screen candidates directly from the terminal. Built for integration with Claude Code, OpenCode, OpenClaw, Codex, and any CLI-capable agent.

Features

  • 🤖 Agent-Ready: Works with Claude Code, OpenCode, OpenClaw, Codex, and more
  • 📋 Full Workflow: Submit jobs, check status, get results, generate emails
  • 🔄 Watch Mode: Poll for completion with progress updates
  • 📄 JSON Output: Machine-readable output for automation
  • ⚙️ Config Management: Easy API token setup and storage
  • 🔗 Webhook Support: Conditional webhooks for automated workflows

Installation

Global Installation

npm install -g hiresquire-cli

Using npx (No Installation)

npx hiresquire-cli --version

Development Installation

git clone https://github.com/hiresquire/hiresquire-cli.git
cd hiresquire-cli
npm install
npm run build

Quick Start

1. Configure API Token

hiresquire init --token YOUR_API_TOKEN

Or set via environment variable:

export HIRESQUIRE_API_TOKEN=your_token_here

2. Submit a Screening Job

hiresquire screen \
  --title "Senior Python Developer" \
  --description "We are looking for a Senior Python Developer..." \
  --resumes ./resumes/

3. Check Results

hiresquire results --job 123

Commands

CommandDescription
initInitialize configuration with API token
screenSubmit a candidate screening job
jobsList all screening jobs
resultsGet results for a job
statusCheck job status
emailGenerate an email for a candidate
configureUpdate configuration settings
cancelCancel a running job
compareCompare candidates side-by-side
outcomeReport hiring outcome
webhook-testTest a webhook endpoint
rate-limitCheck API rate limit status
candidateGet candidate details
set-statusUpdate candidate status
schemaGet API schema

init

Initialize configuration with your API token:

hiresquire init --token YOUR_API_TOKEN

Options:

  • -t, --token <token> - API token from HireSquire dashboard (required)
  • -u, --base-url <url> - API base URL (default: https://api.hiresquireai.com/api/v1)
  • -w, --webhook <url> - Default webhook URL
  • -y, --yes - Skip confirmation

screen

Submit a candidate screening job:

hiresquire screen --title "Job Title" --description "Job description..." --resumes ./resumes/

Options:

  • -t, --title <title> - Job posting title (required)
  • -d, --description <description> - Job description (string or @file) (required)
  • -r, --resumes <paths> - Resume files or directory (comma-separated or @file)
  • -l, --leniency <1-10> - Screening leniency (1=strict, 10=loose), default: 5
  • -w, --webhook <url> - Webhook URL for notifications
  • --watch - Poll for completion and show results
  • --min-score <number> - Minimum score threshold (0-100)
  • --only-top-n <number> - Only return top N candidates

jobs

List all screening jobs:

hiresquire jobs
hiresquire jobs --status completed
hiresquire jobs --page 2 --limit 20

Options:

  • -s, --status <status> - Filter by status (pending, processing, completed, failed)
  • -p, --page <number> - Page number
  • -l, --limit <number> - Results per page

results

Get results for a screening job:

hiresquire results --job 123
hiresquire results --job 123 --min-score 80
hiresquire results --job 123 --only-top-n 5

Options:

  • -j, --job <id> - Job ID (required)
  • --min-score <number> - Filter by minimum score
  • --only-top-n <number> - Only return top N candidates

status

Check status of a screening job:

hiresquire status --job 123
hiresquire status --job 123 --watch

Options:

  • -j, --job <id> - Job ID (required)
  • -w, --watch - Watch for status changes

email

Generate an email for a candidate:

hiresquire email --job 123 --candidate 1 --type invite
hiresquire email --job 123 --candidate 2 --type rejection --message "We decided to move forward with another candidate"

Options:

  • -j, --job <id> - Job ID (required)
  • -c, --candidate <id> - Candidate ID (required)
  • -t, --type <type> - Email type: invite, rejection, followup (required)
  • -m, --message <text> - Custom message to include

configure

Update configuration settings:

hiresquire configure --token NEW_TOKEN
hiresquire configure --webhook https://your-webhook.com
hiresquire configure --clear

Options:

  • -t, --token <token> - API token
  • -u, --base-url <url> - API base URL
  • -w, --webhook <url> - Default webhook URL
  • -l, --leniency <number> - Default leniency level
  • --clear - Clear all configuration

Agent Integration Examples

OpenClaw

OpenClaw (https://openclaw.ai/) can execute CLI commands directly:

// Add to your OpenClaw tools
{
  name: "screen_candidates",
  description: "Screen candidates for a job using HireSquire AI",
  parameters: {
    type: "object",
    properties: {
      job_title: { type: "string" },
      job_description: { type: "string" },
      resumes_path: { type: "string" },
      min_score: { type: "number", minimum: 0, maximum: 100 }
    },
    required: ["job_title", "job_description", "resumes_path"]
  },
  execute: async (params) => {
    const { stdout } = await exec(`npx hiresquire-cli screen 
      --title "${params.job_title}" 
      --description "${params.job_description}" 
      --resumes ${params.resumes_path}
      --json`);
    return JSON.parse(stdout);
  }
}

Claude Code

# Screen candidates
npx hiresquire-cli screen \
  --title "Senior Developer" \
  --description "We are looking for a Senior Developer..." \
  --resumes ./resumes/ \
  --json

Custom Scripts

const { spawn } = require('child_process');

function screenCandidates(jobTitle, jobDescription, resumePath) {
  return new Promise((resolve, reject) => {
    const process = spawn('npx', [
      'hiresquire-cli',
      'screen',
      '--title', jobTitle,
      '--description', jobDescription,
      '--resumes', resumePath,
      '--json'
    ]);

    let output = '';
    process.stdout.on('data', (data) => output += data);
    process.on('close', (code) => {
      if (code === 0) {
        resolve(JSON.parse(output));
      } else {
        reject(new Error(output));
      }
    });
  });
}

Environment Variables

VariableDescription
HIRESQUIRE_API_TOKENAPI token for authentication
HIRESQUIRE_BASE_URLAPI base URL (default: https://api.hiresquireai.com/api/v1)
HIRESQUIRE_WEBHOOK_URLDefault webhook URL

JSON Output

All commands support --json flag for machine-readable output:

hiresquire screen --title "Job Title" --description "Job description..." --resumes ./resumes/ --json
{
  "success": true,
  "job_id": 123,
  "status": "processing",
  "status_url": "https://api.hiresquireai.com/api/v1/jobs/123"
}

Configuration File

Configuration is stored in ~/.hiresquire/config.json:

{
  "apiToken": "your_api_token",
  "baseUrl": "https://api.hiresquireai.com/api/v1",
  "webhookUrl": "https://your-webhook.com",
  "defaultLeniency": 5
}

Security Warning: The API token is stored in plain text. On shared systems, consider using environment variables instead: export HIRESQUIRE_API_TOKEN=your_token_here

Development

# Install dependencies
npm install

# Build TypeScript
npm run build

# Run in development mode
npm run dev -- screen --job "..." --resumes ./resumes/

# Run tests
npm test

License

MIT License - see LICENSE for details.

Support

Keywords

hiresquire

FAQs

Package last updated on 27 Mar 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts