منصوبے کے بارے میں
# Omnia: ہلکا پھلکا WebAssembly رن ٹائم
Omnia WebAssembly (WASI) کمپوننٹس کے لیے ایک ہلکا پھلکا، محفوظ رن ٹائم ہے۔ یہ [wasmtime](https://github.com/bytecodealliance/wasmtime) کے گرد ایک پتلا، آسان ریپر فراہم کرتا ہے تاکہ HTTP، messaging، key-value اسٹورز، اور ماڈل completions جیسی میزبان بنیاد پر خدمات کو آپ کی WASI ایپلیکیشنز میں آسانی سے ضم کیا جا سکے۔
اگرچہ اسے الگ سے بھی استعمال کیا جا سکتا ہے، Omnia بنیادی طور پر **Augentic's Agent Skills** کے رن ٹائم کے طور پر ڈیزائن کیا گیا ہے۔ یہ یقینی بناتا ہے کہ ایجنٹ کے تیار کردہ کوڈ ایک محفوظ، سینڈ باکسڈ ماحول میں چلے جبکہ ضروری انفراسٹرکچر تک کنٹرول شدہ رسائی بھی حاصل رہے۔
## Omnia کیوں؟
- **بطور ڈیفالٹ محفوظ**: تمام مہمان کوڈ ایک سخت WebAssembly سینڈ باکس میں چلتا ہے۔ صلاحیتیں (نیٹ ورک، فائل سسٹم، ماڈل رسائی) واضح طور پر دی جاتی ہیں۔
- **سب کچھ شامل**: عام WASI انٹرفیس کے لیے بلٹ اِن سپورٹ — HTTP، key-value، messaging، SQL، blob اور document اسٹوریج، secrets، identity، WebSockets، observability، اور ماڈل completions — ہر ایک زیرو کنفگ ڈیفالٹ بیک اینڈ کے ساتھ۔
- **ڈویلپر دوست**: ٹائپ شدہ واضح مہمان APIs اور `runtime!` میزبان میکرو بار بار ٹرانسپورٹ گلُو کے بغیر حدود کو نظر آنے والا رکھتے ہیں۔
- **پلگ ایبل آرکیٹیکچر**: مہمان کوڈ کو تبدیل یا دوبارہ کمپائل کیے بغیر بیک اینڈ امپلیمنٹیشنز (مثلاً in-memory سے Redis) تبدیل کریں۔ پروڈکشن بیک اینڈز ساتھی [`omnia-backends`](https://github.com/augentic/omnia-backends) ریپوزٹری میں موجود ہیں۔
- **ملٹی گیسٹ ڈیپلائمنٹس**: ایک رن ٹائم کئی مہمانوں کی میزبانی کر سکتا ہے، ڈیکلریٹو روٹنگ، ورک اسپیس ماؤنٹس، اور میزبان کے ذریعے مہمان سے مہمان لنکنگ کے ساتھ، سب ایک TOML مینی فیسٹ سے چلتے ہیں۔
## فوری آغاز
ایک مہمان بنائیں اور اسے ایک مثال میزبان رن ٹائم کے ساتھ چلائیں:
```bash
cargo build --example http-wasm --target wasm32-wasip2
RUST_LOG=info cargo run --example http -- run ./target/wasm32-wasip2/debug/examples/http_wasm.wasm
```
ایک میزبان رن ٹائم ایک ہی میکرو کال ہے — ہر اندراج ایک WASI انٹرفیس کو اس بیک اینڈ کے ساتھ جوڑتا ہے جو اسے نافذ کرتا ہے:
```rust,ignore
use omnia_wasi_http::{HttpDefault, WasiHttp};
use omnia_wasi_keyvalue::{KeyValueDefault, WasiKeyValue};
use omnia_wasi_otel::{OtelDefault, WasiOtel};
omnia::runtime!({
hosts: {
WasiHttp: HttpDefault,
WasiOtel: OtelDefault,
WasiKeyValue: KeyValueDefault,
}
});
```
## دستاویزات
**[دستاویزات انڈیکس سے شروع کریں](docs/README.md)** — پہلی بار چلانے سے مکمل ڈیپلائمنٹس تک ایک بتدریج راستہ:
- [شروعات](docs/getting-started.md) — پہلی بار بلڈ اور رن، تقریباً 10 منٹ
- How-to گائیڈز — [مہمان لکھنا](docs/guides/writing-guests.md)، [رن ٹائم کی ترکیب](docs/guides/composing-a-runtime.md)، [ملٹی گیسٹ ڈیپلائمنٹس](docs/guides/multi-guest-deployments.md)، صلاحیتوں کی تفصیلی جھلکیاں ([SQL](docs/guides/sql.md)، [documents](docs/guides/document-store.md)، [messaging](docs/guides/messaging.md)، [model/MCP](docs/guides/model-completions.md))، [پروڈکشن بیک اینڈز](docs/guides/production-backends.md)، [ڈیپلائمنٹ](docs/guides/deployment.md)، [ٹیوننگ](docs/guides/performance-tuning.md)
- [آرکیٹیکچر](docs/Architecture.md)، [سیکیورٹی ماڈل](docs/security-model.md)، اور [گلوسری](docs/glossary.md)
- حوالہ جات — [WASI انٹرفیس](docs/reference/wasi-interfaces.md)، [ماڈل انٹرفیس](docs/reference/model.md)، [CLI](docs/reference/cli.md)، [کنفگریشن](docs/reference/configuration.md)
- [مسائل کا حل](docs/troubleshooting.md)
[`examples/`](examples/README.md) ڈائریکٹری میں ہر انٹرفیس کے لیے ایک مکمل کام کرنے والا مہمان + رن ٹائم جوڑا موجود ہے۔
## Crates
| Crate | تفصیل |
| ----------------------------------------------- | ------------------------------------------------------------------------------------------ |
| [`omnia`](crates/omnia) | کمپوزیشن روٹ — اسمبلی، لائف سائیکل، اختیاری crate کمپوزیشن، اور `runtime!` |
| [`omnia-core`](crates/omnia-core) | لائیو رن ٹائم SDK — wasmtime انجن، رجسٹری، ڈسپیچ، اسٹورز، اور ٹیلی میٹری |
| [`omnia-plugin`](crates/omnia-plugin) | `omnia:plugins/loader` صلاحیت — لوڈر میزبان، ایکوزیشن پالیسیاں، اور پلگ اِن اسٹورز؛ omnia کی `plugin` فیچر سے منتخب |
| [`omnia-cli`](crates/omnia-cli) | لیف `run` گرامر — clap کے ساتھ argv-precedence؛ omnia کی `cli` فیچر سے منتخب |
| [`omnia-sdk`](crates/omnia-sdk) | مہمان SDK — `Handler`/`Client`/`Context`، HTTP/messaging روٹرز اور کمانڈ فیساڈ، ایررز، صلاحیتیں، اور MCP سپورٹ |
| [`omnia-guest-macros`](crates/guest-macros) | مہمانوں کے لیے `#[instrument]` observability ایٹریبیوٹ |
| [`omnia-host-macros`](crates/host-macros) | میزبان رن ٹائم جنریشن کے لیے `runtime!` پروک میکرو |
| [`omnia-wasi-blobstore`](crates/wasi-blobstore) | wasi:blobstore میزبان اور مہمان بائنڈنگز |
| [`omnia-wasi-config`](crates/wasi-config) | wasi:config میزبان اور مہمان بائنڈنگز |
| [`omnia-wasi-docstore`](crates/wasi-docstore) | Document-store میزبان اور مہمان بائنڈنگز |
| [`omnia-wasi-http`](crates/wasi-http) | wasi:http میزبان اور مہمان بائنڈنگز |
| [`omnia-wasi-identity`](crates/wasi-identity) | Identity/OAuth میزبان اور مہمان بائنڈنگز |
| [`omnia-wasi-keyvalue`](crates/wasi-keyvalue) | wasi:keyvalue میزبان اور مہمان بائنڈنگز |
| [`omnia-wasi-messaging`](crates/wasi-messaging) | Messaging میزبان اور مہمان بائنڈنگز |
| [`omnia-wasi-model`](crates/wasi-model) | omnia:model completion میزبان اور مہمان بائنڈنگز |
| [`omnia-wasi-otel`](crates/wasi-otel) | OpenTelemetry میزبان اور مہمان بائنڈنگز |
| [`omnia-wasi-sql`](crates/wasi-sql) | wasi:sql میزبان اور مہمان بائنڈنگز |
| [`omnia-wasi-vault`](crates/wasi-vault) | Secrets-vault میزبان اور مہمان بائنڈنگز |
| [`omnia-wasi-websocket`](crates/wasi-websocket) | WebSocket میزبان اور مہمان بائنڈنگز |
## لائسنس
MIT OR Apache-2.0
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.