UNPKG

virtue-cli

Version:

Personal character development CLI tool for tracking virtues and philosophical alignment

148 lines 6.32 kB
export const CORE_VIRTUES = [ { name: 'Wisdom', baseDefinition: 'The pursuit of knowledge, understanding, and sound judgment in decision-making', emoji: '🧠', defaultPriority: 1.0, subDimensions: [ { name: 'Critical Thinking', description: 'Analyzing information objectively and questioning assumptions', indicators: ['Seeks multiple perspectives', 'Questions sources', 'Identifies biases', 'Thinks systematically'] }, { name: 'Learning Orientation', description: 'Actively seeking knowledge and remaining open to new ideas', indicators: ['Reads regularly', 'Asks questions', 'Admits ignorance', 'Changes mind when presented with evidence'] }, { name: 'Practical Judgment', description: 'Applying knowledge effectively in real-world situations', indicators: ['Makes informed decisions', 'Considers consequences', 'Balances competing factors', 'Learns from mistakes'] } ] }, { name: 'Integrity', baseDefinition: 'Aligning actions with values and maintaining honesty in all dealings', emoji: '💎', defaultPriority: 0.95, subDimensions: [ { name: 'Honesty', description: 'Being truthful in words and transparent in actions', indicators: ['Tells the truth', 'Admits mistakes', 'Avoids deception', 'Keeps promises'] }, { name: 'Authenticity', description: 'Being genuine and true to one\'s core values', indicators: ['Acts consistently with beliefs', 'Expresses true opinions', 'Resists social pressure', 'Maintains identity'] }, { name: 'Reliability', description: 'Being dependable and following through on commitments', indicators: ['Meets deadlines', 'Keeps commitments', 'Shows up consistently', 'Takes responsibility'] } ] }, { name: 'Compassion', baseDefinition: 'Understanding others\' experiences and acting to reduce suffering', emoji: '❤️', defaultPriority: 0.9, subDimensions: [ { name: 'Empathy', description: 'Understanding and sharing the feelings of others', indicators: ['Listens actively', 'Recognizes emotions', 'Considers others\' perspectives', 'Shows understanding'] }, { name: 'Kindness', description: 'Acting with care and consideration toward others', indicators: ['Helps others', 'Shows gentleness', 'Offers support', 'Treats people well'] }, { name: 'Service', description: 'Contributing to the wellbeing of others and community', indicators: ['Volunteers time', 'Supports causes', 'Helps those in need', 'Works for common good'] } ] }, { name: 'Justice', baseDefinition: 'Treating people fairly and working toward equitable outcomes', emoji: '⚖️', defaultPriority: 0.85, subDimensions: [ { name: 'Fairness', description: 'Applying consistent standards and giving everyone their due', indicators: ['Treats people equally', 'Follows fair processes', 'Shares resources equitably', 'Avoids favoritism'] }, { name: 'Advocacy', description: 'Standing up for rights and speaking against injustice', indicators: ['Defends the vulnerable', 'Challenges unfairness', 'Speaks up for others', 'Promotes equality'] }, { name: 'Responsibility', description: 'Taking ownership of actions and their consequences', indicators: ['Accepts accountability', 'Considers impact on others', 'Makes amends when needed', 'Thinks about consequences'] } ] }, { name: 'Courage', baseDefinition: 'Acting rightly despite fear, uncertainty, or opposition', emoji: '🦁', defaultPriority: 0.8, subDimensions: [ { name: 'Moral Courage', description: 'Standing up for principles even when it\'s difficult', indicators: ['Confronts wrongdoing', 'Defends beliefs', 'Takes unpopular stands', 'Does the right thing'] }, { name: 'Resilience', description: 'Persevering through challenges and setbacks', indicators: ['Bounces back from failure', 'Persists despite obstacles', 'Maintains hope', 'Adapts to change'] }, { name: 'Initiative', description: 'Taking action and embracing new challenges', indicators: ['Takes first steps', 'Tries new things', 'Leads when needed', 'Embraces opportunities'] } ] } ]; /** * Generate the core virtue set - all users get these same 5 virtues * Priority weights and definitions will be customized by AI based on responses */ export function getCoreVirtues() { return CORE_VIRTUES.map(coreVirtue => ({ name: coreVirtue.name, definition: coreVirtue.baseDefinition, priority_weight: coreVirtue.defaultPriority, template_source: 'core-framework', emoji: coreVirtue.emoji, sub_dimensions: coreVirtue.subDimensions.map(subDim => ({ name: subDim.name, definition: subDim.description, indicators: [...subDim.indicators] })) })); } /** * Get virtue by name for AI customization */ export function getCoreVirtueByName(name) { return CORE_VIRTUES.find(v => v.name === name); } /** * Validate that priority weights are properly ordered and within bounds */ export function validateVirtueWeights(virtues) { return virtues.every(v => v.priority_weight >= 0.3 && v.priority_weight <= 1.0); } //# sourceMappingURL=CoreVirtues.js.map