
Security News
Socket Releases Free Certified Patches for Nuxt Security Vulnerabilities
Socket releases free Certified Patches for high-severity Nuxt vulnerabilities, including server-side remote code execution through server island props.
create-ai-operating-system
Advanced tools
Create an AI Operating System quickstart for work or personal knowledge operations.
A local-first Markdown workspace that gives AI tools a durable place to read, write, search, and hand off context for work or personal planning.
Most AI sessions fail for a simple reason: the model is asked to reason from scattered files, stale chat history, and partial memory. This quickstart gives the context a home. Raw material stays preserved, reusable knowledge gets written into a wiki, decisions have a clear place to land, and search can be rebuilt locally at any time.
The public package is safe by default. It ships folder guidance, placeholder files, and reusable templates, not real source files, private examples, local paths, company details, or personal history.
AI tools are useful at synthesis, drafting, review, and planning. They are weaker when every session starts from scratch.
An AI Operating System fixes that by making context durable:
The result is not a chatbot wrapper. It is a file-based operating layer for repeated AI-assisted work.
The workspace has five jobs:
raw/ keeps original source material available for verification.wiki/ holds the written knowledge future sessions should use.brain/ defines the rules and writing style for humans and AI tools._system/ keeps the operating model, taxonomy, index, and change log.tools/ and checks/ provide local search and privacy-oriented validation.flowchart LR
CAPTURE["Capture<br/>raw/ingest or domain raw folders"] --> SUMMARIZE["Summarize<br/>wiki/sources reference pages"]
SUMMARIZE --> CONCEPTS["Distill<br/>wiki/concepts"]
SUMMARIZE --> OPERATE["Operate<br/>wiki/work or wiki/life"]
CONCEPTS --> OPERATE
OPERATE --> OUTPUTS["Save useful outputs<br/>outputs/"]
OPERATE --> INDEX["Rebuild search<br/>_system/index.md + .system-cache/wiki.db"]
INDEX --> SEARCH["Query locally<br/>llmwiki search"]
SEARCH --> AGENT["Start next AI session<br/>with filed context"]
AGENT --> SUMMARIZE
AGENT --> OPERATE
The important pattern is capture -> summarize -> distill -> operate -> search -> reuse. Raw files are preserved, but the wiki becomes the normal reading surface for future work.
Create a personal workspace:
npx create-ai-operating-system my-aos --personal
cd my-aos
Or create a work workspace:
npx create-ai-operating-system work-aos --work
cd work-aos
Read the rules, then build the index:
sed -n '1,120p' AGENTS.md
python3 tools/scripts/wiki_index.py rebuild
./tools/scripts/llmwiki status
Add real source material only in a private workspace.
Put new material in raw/ingest/ until the right domain is clear.
Write a source reference page in wiki/sources/.
Move durable ideas into wiki/concepts/.
Record active work in wiki/work/ or personal execution in wiki/life/.
Save useful drafts, reports, and checks in outputs/.
Rebuild search with python3 tools/scripts/wiki_index.py rebuild.
Query before starting from memory:
./tools/scripts/llmwiki search "decision log"
Run the privacy gate before sharing:
./checks/offline_check.sh
See GUIDE.md for a longer walkthrough.
Reference pages, or RPs, are the pages you want a future human or AI session to read before acting. They are short enough to scan, structured enough to search, and specific enough to avoid reopening raw files for routine questions.
This template uses three main kinds:
| RP type | Location | Purpose |
|---|---|---|
| Source RP | wiki/sources/ | Summarizes one source and links back to raw_ref |
| Concept RP | wiki/concepts/ | Captures reusable ideas, rules, frameworks, and recurring patterns |
| Operating RP | wiki/work/ or wiki/life/ | Records projects, decisions, meetings, goals, reviews, and plans |
A good source RP answers:
RPs are the handoff surface. Chat answers can be useful, but they are easy to lose. RPs turn useful answers into filed context.
Local-first means the primary workspace lives on disk as normal files. Markdown is the source of truth. SQLite search indexes and any future vector indexes are derived artifacts that can be deleted and rebuilt.
That choice matters for four reasons:
Local-first does not mean anti-cloud. You can still use hosted AI tools, file sync, or GitHub for public templates. The key rule is that the canonical knowledge stays in files you control.
The shipped search layer is local text search, not embeddings.
tools/scripts/wiki_index.py reads Markdown files, writes _system/index.md, and stores a rebuildable SQLite database at .system-cache/wiki.db. When SQLite FTS5 is available, llmwiki search uses full-text search. If FTS5 is not available, it falls back to a simpler text match.
No LLM or embedding model is required to use the package. The template does not call a cloud model, create embeddings, or send your files to an external service.
LLMs are useful in the workflow, but they are helpers:
llmwiki, then reason over the returned pages.Embeddings can be added later if you want semantic search. Keep them as a private extension:
.vector/ or .system-cache/.The tradeoff is simple: SQLite text search is transparent, cheap, and easy to rebuild. Embeddings can find looser semantic matches, but they add model choice, storage, refresh, privacy, and debugging decisions.
The file structure is opinionated because AI tools need predictable places to read and write.
| Path | Why it exists | Tradeoff |
|---|---|---|
AGENTS.md | Gives AI tools the read order and workspace rules | Must stay current as the system changes |
brain/rules.md | Defines lifecycle, privacy, and page rules | Too many rules can slow capture; keep them practical |
brain/voice.md | Keeps generated writing consistent | Style guidance should not override factual clarity |
raw/ | Preserves original source material | Raw files can contain sensitive data; keep real raw content private |
wiki/sources/ | Turns sources into reusable RPs | Summaries need provenance and should not copy private raw content into public repos |
wiki/concepts/ | Holds ideas that survive beyond one source | Concepts can drift if they are not linked back to evidence |
wiki/work/ | Stores projects, meetings, decisions, and operating records | Work context usually has higher sharing risk |
wiki/life/ | Stores goals, routines, learning plans, decisions, and reviews | Personal context needs stricter privacy habits |
_system/ | Holds the operating model, taxonomy, index, and log | Generated index files should be rebuilt after material edits |
outputs/ | Saves drafts, reports, checks, and useful AI answers | Outputs are not canonical until promoted into wiki/ |
tools/ | Provides local scripts for indexing and querying | Scripts stay small; advanced search is an extension |
checks/ | Runs smoke and privacy-oriented checks | Checks are guardrails, not a full privacy audit |
| Template | Best for | Core pages |
|---|---|---|
work | Projects, meetings, decisions, research, stakeholder context, operating reviews | Project page, decision log, meeting synthesis, project plan |
personal | Goals, learning, routines, personal decisions, reviews, private research | Personal operating model, weekly review, learning plan, decision log |
The split matters. Work and personal systems have different risk profiles, review habits, and page types. Keeping them separate makes it easier to share one without exposing the other.
Both templates use mock descriptions and placeholders. They do not ship personal content, company names, project history, local install paths, raw PDFs, or private source summaries.
The workspace is plain files, so no single app is required. These tools fit the model well:
llmwiki, rg, Git, smoke checks, and indexing.Use the simplest setup first: Markdown files, the included SQLite search, and one editor you already trust.
AGENTS.md reduces drift by telling tools what to read first and where to write.wiki/.The public package is intentionally generic.
Do not publish:
Use real content only in a private clone. Run ./checks/offline_check.sh before sharing, and treat the result as a guardrail rather than a guarantee.
Built with inspiration from:
npm test
npm run smoke
npm pack --dry-run
node bin/create-ai-operating-system.js .tmp/demo --work --force
Apache-2.0
FAQs
Create an AI Operating System quickstart for work or personal knowledge operations.
We found that create-ai-operating-system demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

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.

Security News
Socket releases free Certified Patches for high-severity Nuxt vulnerabilities, including server-side remote code execution through server island props.

Security News
An open letter signed by 50 companies, from NVIDIA and Microsoft to Mistral and Hugging Face, urges Washington not to restrict open weight AI.

Security News
/Research
A fake corepack.org site is impersonating the Node.js tool and delivers an infostealer and proxyware to developers who download it.