rawi
Version:
Rawi (راوي) is the developer-friendly AI CLI that brings the power of 12 major AI providers directly to your terminal. With seamless shell integration, persistent conversations, and 200+ specialized prompt templates, Rawi transforms your command line into
4 lines • 4.85 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }/* Rawi (راوي) is the developer-friendly AI CLI that brings the power of 12 major AI providers directly to your terminal. With seamless shell integration, persistent conversations, and 200+ specialized prompt templates, Rawi transforms your command line into an intelligent development workspace. */
var _chunkJIQYHHMVcjs = require('./chunk-JIQYHHMV.cjs');var _chunkP4NH5RQRcjs = require('./chunk-P4NH5RQR.cjs');var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);var c=new _chunkJIQYHHMVcjs.a,d= exports.a =(o=_chunkP4NH5RQRcjs.d)=>c.getCredentials(o),f= exports.b =(o=_chunkP4NH5RQRcjs.d)=>{let e=d(o);if(_optionalChain([e, 'optionalAccess', _ => _.provider])==="ollama"||_optionalChain([e, 'optionalAccess', _2 => _2.provider])==="lmstudio")return!!(e.provider&&e.model);if(_optionalChain([e, 'optionalAccess', _3 => _3.provider])==="azure")return!!(e.provider&&e.model&&(e.apiKey||e.providerSettings&&"apiKey"in e.providerSettings&&e.providerSettings.apiKey)&&e.providerSettings&&"resourceName"in e.providerSettings);if(_optionalChain([e, 'optionalAccess', _4 => _4.provider])==="bedrock"){if(!e.provider||!e.model||!e.providerSettings)return!1;let r=e.providerSettings;return!!("useProviderChain"in r&&r.useProviderChain||"accessKeyId"in r&&"secretAccessKey"in r&&r.accessKeyId&&r.secretAccessKey)}let n=e&&(e.apiKey||e.providerSettings&&"apiKey"in e.providerSettings&&e.providerSettings.apiKey);return _optionalChain([e, 'optionalAccess', _5 => _5.provider])==="qwen"||_optionalChain([e, 'optionalAccess', _6 => _6.provider])==="xai"||_optionalChain([e, 'optionalAccess', _7 => _7.provider])==="openai"||_optionalChain([e, 'optionalAccess', _8 => _8.provider])==="google"||_optionalChain([e, 'optionalAccess', _9 => _9.provider])==="anthropic"?!!(_optionalChain([e, 'optionalAccess', _10 => _10.provider])&&_optionalChain([e, 'optionalAccess', _11 => _11.model])&&n):!!(n&&_optionalChain([e, 'optionalAccess', _12 => _12.provider])&&_optionalChain([e, 'optionalAccess', _13 => _13.model]))},g= exports.c =(o=_chunkP4NH5RQRcjs.d)=>{let e=d(o);e||(console.error(_chalk2.default.red(`\u274C No configuration found for profile '${o}'. Run 'rawi configure' to set up.`)),process.exit(1));let n=e&&(e.apiKey||e.providerSettings&&"apiKey"in e.providerSettings&&e.providerSettings.apiKey);if(e.provider==="ollama")(!e.provider||!e.model)&&(console.error(_chalk2.default.red(`\u274C Incomplete configuration for profile '${o}'. Run 'rawi configure' to update.`)),process.exit(1));else if(e.provider==="azure")(!n||!e.provider||!e.model||!e.providerSettings||!("resourceName"in e.providerSettings))&&(console.error(_chalk2.default.red(`\u274C Incomplete Azure configuration for profile '${o}'. Run 'rawi configure' to update.`)),process.exit(1));else if(e.provider==="bedrock"){(!e.provider||!e.model||!e.providerSettings)&&(console.error(_chalk2.default.red(`\u274C Incomplete Bedrock configuration for profile '${o}'. Run 'rawi configure' to update.`)),process.exit(1));let r=e.providerSettings,p="useProviderChain"in r&&r.useProviderChain,a="accessKeyId"in r&&"secretAccessKey"in r&&r.accessKeyId&&r.secretAccessKey;!p&&!a&&(console.error(_chalk2.default.red(`\u274C Incomplete Bedrock credentials for profile '${o}'. Run 'rawi configure' to update.`)),process.exit(1))}else e.provider==="qwen"||e.provider==="xai"||e.provider==="openai"||e.provider==="google"||e.provider==="anthropic"?(!e.provider||!e.model||!n)&&(console.error(_chalk2.default.red(`\u274C Incomplete ${e.provider} configuration for profile '${o}'. Run 'rawi configure' to update.`)),process.exit(1)):(!n||!e.provider||!e.model)&&(console.error(_chalk2.default.red(`\u274C Incomplete configuration for profile '${o}'. Run 'rawi configure' to update.`)),process.exit(1));return e};exports.a = d; exports.b = f; exports.c = g;
/* Rawi (راوي) is the developer-friendly AI CLI that brings the power of 12 major AI providers directly to your terminal. With seamless shell integration, persistent conversations, and 200+ specialized prompt templates, Rawi transforms your command line into an intelligent development workspace. */
//# sourceMappingURL=chunk-4RFN2JBI.cjs.map