prompts-conductor
Version:
⚡ Wire up your AI prompts - The ultimate CLI for AI workflow orchestration. Create, manage, and chain prompts across 400+ AI platforms with enterprise security, version control, and automation. Includes comprehensive CLI documentation.
82 lines (71 loc) • 2.66 kB
JavaScript
// Example: Using Prompts Conductor as a Node.js module
import { substituteVariables, parseVariables } from 'prompts-conductor';
// Example 1: Simple variable substitution
console.log('=== Simple Variable Substitution ===');
const simpleText = 'Hello {{name}}, welcome to {{platform}}!';
const simpleContext = {
variables: { name: 'John', platform: 'prompts-conductor' },
};
const simpleResult = substituteVariables(simpleText, simpleContext);
console.log('Input:', simpleText);
console.log('Output:', simpleResult.text);
console.log('Errors:', simpleResult.errors);
console.log('Warnings:', simpleResult.warnings);
// Example 2: Nested object access
console.log('\n=== Nested Object Access ===');
const nestedText =
'User: {{user.name}}, Email: {{user.email}}, Level: {{user.account.level}}';
const nestedContext = {
variables: {
user: {
name: 'Jane Doe',
email: 'jane@example.com',
account: {
level: 'premium',
},
},
},
};
const nestedResult = substituteVariables(nestedText, nestedContext);
console.log('Input:', nestedText);
console.log('Output:', nestedResult.text);
// Example 3: Variable parsing
console.log('\n=== Variable Parsing ===');
const complexText =
'{{greeting}} {{user.name}}! You have {{count}} messages. Active: {{active}}';
const variables = parseVariables(complexText);
console.log('Text:', complexText);
console.log('Parsed variables:', variables);
// Example 4: Template with validation
console.log('\n=== Template with Validation ===');
const templateText =
'Create a {{component_name}} with {{feature_count}} features.';
const templateContext = {
variables: { component_name: 'Button', feature_count: 'not a number' },
template: {
variables: [
{ name: 'component_name', type: 'string', required: true },
{ name: 'feature_count', type: 'number', required: true },
],
},
};
const templateResult = substituteVariables(templateText, templateContext);
console.log('Input:', templateText);
console.log('Output:', templateResult.text);
console.log('Errors:', templateResult.errors);
// Example 5: Default values
console.log('\n=== Default Values ===');
const defaultText = 'Hello {{name}}! Your level is {{level}}.';
const defaultContext = {
variables: { name: 'Alice' },
template: {
variables: [
{ name: 'name', type: 'string', required: true },
{ name: 'level', type: 'string', required: false, default: 'basic' },
],
},
};
const defaultResult = substituteVariables(defaultText, defaultContext);
console.log('Input:', defaultText);
console.log('Output:', defaultResult.text);
console.log('Warnings:', defaultResult.warnings);