What Natural Language Processing Packages Are Included in holaOS?

holaOS ships with six built-in NLP packages: OpenAI, Anthropic Claude SDK, PI AI core utilities, PI coding agents, tree-sitter-wasms, and unpdf, all declared in runtime/harness-host/package.json.

The holaOS AI operating system provides a complete natural language processing stack out of the box. These packages power the PI (personal assistant) runtime, enabling skills to call large language models, process documents, and generate code without external setup.

Complete List of NLP Packages in holaOS

According to the source code in runtime/harness-host/package.json, holaOS includes these NLP and LLM packages:

Package Purpose Location
openai Official OpenAI client for ChatGPT, completions, embeddings, and moderation package.json line 35
@anthropic-ai/claude-agent-sdk Anthropic Claude SDK with streaming access to Claude-type LLMs package.json line 27
@earendil-works/pi-ai Core AI utilities for prompt handling, model routing, and response parsing package.json line 28
@earendil-works/pi-coding-agent Coding assistants for LLM-powered code generation and analysis package.json line 29
tree-sitter-wasms Syntax-tree parser feeding natural language prompts into the LLM pipeline package.json line 36
unpdf PDF text extraction for document Q&A and summarization package.json line 37

Core NLP Architecture Files

The NLP stack is orchestrated through two primary TypeScript files in the runtime:

How to Use holaOS NLP Packages: Code Examples

OpenAI Client for Chat Completions

import OpenAI from "openai";

const client = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });

async function chat(prompt: string) {
  const completion = await client.chat.completions.create({
    model: "gpt-4o-mini",
    messages: [{ role: "user", content: prompt }],
    temperature: 0.7,
  });
  return completion.choices[0].message.content;
}

console.log(await chat("Summarise the latest news about AI in one sentence."));

This pattern is used throughout the PI runtime in runtime/harness-host/src/pi.ts.

Anthropic Claude SDK Integration

import { Claude } from "@anthropic-ai/claude-agent-sdk";

const claude = new Claude({ apiKey: process.env.CLAUDE_API_KEY });

async function claudeChat(prompt: string) {
  const response = await claude.completions.create({
    model: "claude-3-5-sonnet-20241022",
    messages: [{ role: "user", content: prompt }],
    maxTokens: 1024,
  });
  return response.content[0].text;
}

console.log(await claudeChat("Explain the concept of embeddings in simple terms."));

The routing layer in runtime/harness-host/src/model-routing.ts normalizes these calls alongside OpenAI-compatible requests.

PI Core Utilities for Skill Execution

import { PiRuntime } from "@earendil-works/pi-ai";
import { resolvePiModelProfile } from "./model-routing";

async function runSkill(prompt: string) {
  const profile = resolvePiModelProfile({ model: "openai/gpt-4o-mini" });
  const runtime = new PiRuntime({ modelProfile: profile });
  const result = await runtime.run(prompt);
  return result.output;
}

console.log(await runSkill("Write a short poem about the sunrise."));

The PiRuntime class from @earendil-works/pi-ai is imported and wired by runtime/harness-host/src/pi.ts.

Document Processing and Code Analysis Capabilities

Beyond direct LLM access, holaOS NLP packages include supporting tools:

  • tree-sitter-wasms — Parses code into syntax trees for LLM consumption
  • unpdf — Extracts PDF text streams for document-based Q&A workflows

These enable multi-modal NLP pipelines where documents and code can feed directly into prompts.

Summary

  • holaOS includes six dedicated NLP packages declared in runtime/harness-host/package.json
  • OpenAI and Anthropic Claude SDK provide first-party LLM access
  • @earendil-works/pi-ai and pi-coding-agent furnish the PI runtime's core AI orchestration
  • Document and code parsers (tree-sitter-wasms, unpdf) extend NLP to structured data
  • All packages route through pi.ts and model-routing.ts for unified provider management

Frequently Asked Questions

Does holaOS support multiple LLM providers simultaneously?

Yes. The runtime/harness-host/src/model-routing.ts file contains logic that maps provider identifiers to their respective API endpoints and normalizes request shapes, allowing skills to switch between OpenAI, Anthropic, and other providers without code changes.

Where are the NLP packages configured in holaOS?

All NLP dependencies are declared in runtime/harness-host/package.json lines 27-37. The runtime loads these through the PI personal assistant system located in runtime/harness-host/src/pi.ts.

Can holaOS process PDF documents for LLM analysis?

Yes. The unpdf package (package.json line 37) extracts text from PDF files into streams that the LLM pipeline can consume for summarization, Q&A, and other document-based tasks.

Is there a coding-specific NLP agent in holaOS?

Yes. The @earendil-works/pi-coding-agent package provides specialized coding assistants that leverage LLM backends for code generation, refactoring, and analysis.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →