qiita

$npx mdskill add vm0-ai/vm0-skills/qiita

Search, read, and publish Japanese tech articles via Qiita API.

  • Retrieves articles by query, user, tag, or title filters.
  • Integrates with Qiita API for data access and content creation.
  • Executes searches using structured query parameters and pagination.
  • Delivers results through command-line output or file uploads.

SKILL.md

.github/skills/qiitaView on GitHub ↗
---
name: qiita
description: Qiita API for Japanese tech articles. Use when user mentions "Qiita",
  "Japanese tech blog", or asks about Qiita posts.
---

## How to Use

### Commands

The script supports 5 modules: `item`, `user`, `tag`, `comment`, `auth`

### 1. Item - Articles

#### Search Articles

```bash
scripts/qiita.sh item search --query "React hooks"
scripts/qiita.sh item search --query "tag:Python" --per-page 20
scripts/qiita.sh item search --query "user:username title:tutorial"
```

| Parameter | Required | Default | Description |
|-----------|----------|---------|-------------|
| --query | Yes | - | Search query (supports tag:, user:, title:, body:, stocks:) |
| --page | No | 1 | Page number |
| --per-page | No | 20 | Items per page (max 100) |

#### Get Article

```bash
scripts/qiita.sh item get --id "article_id"
```

#### Get My Articles

```bash
scripts/qiita.sh item mine --per-page 10
```

#### Post Article

```bash
scripts/qiita.sh item post --title "Article Title" --body "# Content" --tags "Python,Tutorial"
scripts/qiita.sh item post --title "Draft Post" --body-file ./article.md --tags "React" --private
```

| Parameter | Required | Default | Description |
|-----------|----------|---------|-------------|
| --title | Yes | - | Article title |
| --body | Yes* | - | Article body in Markdown |
| --body-file | Yes* | - | Read body from file (alternative to --body) |
| --tags | Yes | - | Comma-separated tags (max 5) |
| --private | No | false | Create as private article |

#### Update Article

```bash
scripts/qiita.sh item update --id "article_id" --title "New Title" --body "Updated content"
```

#### Delete Article

```bash
scripts/qiita.sh item delete --id "article_id"
```

### 2. User - User Information

#### Get Current User

```bash
scripts/qiita.sh user me
```

#### Get User Profile

```bash
scripts/qiita.sh user get --id "username"
```

#### Get User's Articles

```bash
scripts/qiita.sh user items --id "username" --per-page 10
```

#### Get User's Stocks

```bash
scripts/qiita.sh user stocks --id "username"
```

#### Get User's Followers/Following

```bash
scripts/qiita.sh user followers --id "username"
scripts/qiita.sh user following --id "username"
```

### 3. Tag - Tags

#### List Popular Tags

```bash
scripts/qiita.sh tag list --per-page 20
scripts/qiita.sh tag list --sort count
```

| Parameter | Required | Default | Description |
|-----------|----------|---------|-------------|
| --page | No | 1 | Page number |
| --per-page | No | 20 | Tags per page |
| --sort | No | count | Sort by: count or name |

#### Get Tag Info

```bash
scripts/qiita.sh tag get --id "Python"
```

#### Get Articles by Tag

```bash
scripts/qiita.sh tag items --id "JavaScript" --per-page 10
```

### 4. Comment - Comments

#### Get Article Comments

```bash
scripts/qiita.sh comment list --item-id "article_id"
```

#### Post Comment

```bash
scripts/qiita.sh comment post --item-id "article_id" --body "Great article!"
```

#### Delete Comment

```bash
scripts/qiita.sh comment delete --id "comment_id"
```

### 5. Auth - Authentication

#### Verify Token

```bash
scripts/qiita.sh auth verify
```

Returns current user info if token is valid.

## Search Query Syntax

Qiita search supports special operators:

| Operator | Example | Description |
|----------|---------|-------------|
| tag: | `tag:Python` | Filter by tag |
| user: | `user:qiita` | Filter by author |
| title: | `title:tutorial` | Search in title |
| body: | `body:example` | Search in body |
| stocks: | `stocks:>100` | Filter by stock count |
| created: | `created:>2024-01-01` | Filter by date |

Combine operators: `tag:React title:hooks stocks:>50`

## Examples

### Search and Read Articles

```bash
# Search for Python tutorials
scripts/qiita.sh item search --query "tag:Python title:tutorial" --per-page 5

# Get specific article
scripts/qiita.sh item get --id "abc123def456"
```

### Publish an Article

```bash
# Post from command line
scripts/qiita.sh item post --title "Getting Started with Docker" --body "# Introduction

Docker is a containerization platform..." --tags "Docker,DevOps,Tutorial"

# Post from file
scripts/qiita.sh item post --title "My Technical Article" --body-file ./my-article.md --tags "Programming"
```

### Explore Tags and Users

```bash
# Get trending tags
scripts/qiita.sh tag list --per-page 10 --sort count

# Get user's articles
scripts/qiita.sh user items --id "famous_author" --per-page 5
```

## Guidelines

1. **Rate Limits**: 1000 requests/hour (authenticated), 60/hour (unauthenticated)
2. **Tags**: Maximum 5 tags per article
3. **Markdown**: Article body supports GitHub-flavored Markdown
4. **Private Articles**: Use `--private` flag for drafts or private content
5. **Search**: Use operators for precise search results

## API Reference

- Documentation: https://qiita.com/api/v2/docs
- Access Tokens: https://qiita.com/settings/tokens/new

More from vm0-ai/vm0-skills

SkillDescription
account-reconciliationPerform account reconciliations comparing general ledger balances against subledgers, bank statements, or external records. Use for bank reconciliation, GL-to-subledger reconciliation, intercompany reconciliation, balance sheet reconciliation, reconciling item analysis, outstanding item aging, or clearing open items.
agentphoneBuild AI phone agents with AgentPhone API. Use when the user wants to make phone calls, send/receive SMS, manage phone numbers, create voice agents, set up webhooks, or check usage — anything related to telephony, phone numbers, or voice AI.
ahrefsAhrefs SEO API for backlink and keyword analysis. Use when user mentions
amplitudeAmplitude product analytics API. Use when user mentions "Amplitude",
analysis-qaQuality-check a data analysis before sharing — verify joins, aggregations, denominators, time ranges, and metric definitions. Detect pitfalls like survivorship bias, average-of-averages, join explosion, timezone mismatches, incomplete periods, and selection bias. Includes documentation templates for reproducible analyses.
anthropic-managed-agentsAnthropic Managed Agents API for programmatically creating, running, and streaming AI agents on Anthropic's cloud infrastructure. Use when the user mentions "Managed Agents", "Anthropic agent sessions", or needs to create/run/stream an Anthropic agent with tool use (bash, git, web), attach GitHub repositories, or inject secrets via Vault. Do NOT use for standard Claude Messages API — use the Claude API skill instead.
apifyApify web scraping platform. Use when user mentions "scrape website",
asanaAsana API for tasks and projects. Use when user mentions "Asana", "asana.com",
atlassianAtlassian API for Confluence and Jira. Use when user mentions "Confluence
attioAttio REST API for AI-native CRM operations — manage companies, people, deals, and custom objects, plus notes, tasks, lists, and comments. Use when the user mentions "Attio", "CRM record", "create company", "add person", "list entry", "CRM note", or "CRM task".