[{"data":1,"prerenderedAt":1846},["ShallowReactive",2],{"doc-features\u002Fai-assistant":3,"content-query-n5bjvzMC2l":4},null,{"_path":5,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":9,"description":10,"body":11,"_type":1840,"_id":1841,"_source":1842,"_file":1843,"_stem":1844,"_extension":1845},"\u002Fdocs\u002Ffeatures\u002Fai-assistant","features",false,"","AI Assistant","Use AI-powered coding assistance and data analysis",{"type":12,"children":13,"toc":1799},"root",[14,22,39,94,101,153,159,166,171,179,198,206,224,232,250,258,286,292,297,360,365,371,376,449,454,460,465,528,533,539,545,605,611,616,659,664,670,675,684,689,695,701,709,727,735,753,763,769,777,795,804,810,815,838,847,853,859,962,968,1031,1037,1042,1065,1073,1106,1112,1117,1123,1129,1139,1149,1267,1272,1282,1288,1293,1316,1321,1339,1345,1353,1376,1385,1391,1397,1407,1464,1474,1480,1490,1531,1541,1547,1561,1569,1576,1594,1600,1606,1669,1675,1698,1704,1759,1765,1793],{"type":15,"tag":16,"props":17,"children":19},"element","h1",{"id":18},"ai-assistant",[20],{"type":21,"value":9},"text",{"type":15,"tag":23,"props":24,"children":29},"div",{"className":25,"ariaHidden":28},[26,27],"docs-page-hero","docs-page-hero--clay","true",[30,32],{"type":21,"value":31},"\n  ",{"type":15,"tag":33,"props":34,"children":38},"img",{"src":35,"alt":8,"width":36,"height":37},"\u002Fimages\u002Fdocs-illustrations\u002Fai-assistant.svg",128,72,[],{"type":15,"tag":40,"props":41,"children":42},"p",{},[43,45,50,52,59,61,68,70,76,78,84,86,92],{"type":21,"value":44},"The CredVault ",{"type":15,"tag":46,"props":47,"children":48},"strong",{},[49],{"type":21,"value":9},{"type":21,"value":51}," is the in-dashboard chat at ",{"type":15,"tag":53,"props":54,"children":56},"code",{"className":55},[],[57],{"type":21,"value":58},"\u002Fassistant",{"type":21,"value":60},". It helps with code, queries, and platform questions using your workspace context. For terminal Vault AI use ",{"type":15,"tag":62,"props":63,"children":65},"a",{"href":64},"\u002Fdocs\u002Ffeatures\u002Fcie-cli",[66],{"type":21,"value":67},"CIE CLI",{"type":21,"value":69}," (",{"type":15,"tag":53,"props":71,"children":73},{"className":72},[],[74],{"type":21,"value":75},"cie",{"type":21,"value":77}," \u002F ",{"type":15,"tag":53,"props":79,"children":81},{"className":80},[],[82],{"type":21,"value":83},"cie ai",{"type":21,"value":85},"). For the desktop agent use ",{"type":15,"tag":62,"props":87,"children":89},{"href":88},"\u002Fdocs\u002Ffeatures\u002Fpragma-ai-agent",[90],{"type":21,"value":91},"Pragma",{"type":21,"value":93},". Omnigent (dashboard sidebar) is a separate governed-agent workspace tool.",{"type":15,"tag":95,"props":96,"children":98},"h2",{"id":97},"starting-a-chat",[99],{"type":21,"value":100},"Starting a Chat",{"type":15,"tag":102,"props":103,"children":104},"ol",{},[105,123,133,143],{"type":15,"tag":106,"props":107,"children":108},"li",{},[109,114,116,121],{"type":15,"tag":46,"props":110,"children":111},{},[112],{"type":21,"value":113},"Open the Assistant",{"type":21,"value":115}," — Go to ",{"type":15,"tag":53,"props":117,"children":119},{"className":118},[],[120],{"type":21,"value":58},{"type":21,"value":122}," (or open Assistant from the app navigation)",{"type":15,"tag":106,"props":124,"children":125},{},[126,131],{"type":15,"tag":46,"props":127,"children":128},{},[129],{"type":21,"value":130},"Type Your Request",{"type":21,"value":132}," — Ask in plain English, e.g., \"Write a Python function that calculates revenue by region\"",{"type":15,"tag":106,"props":134,"children":135},{},[136,141],{"type":15,"tag":46,"props":137,"children":138},{},[139],{"type":21,"value":140},"Get Instant Response",{"type":21,"value":142}," — Code, explanations, and next steps",{"type":15,"tag":106,"props":144,"children":145},{},[146,151],{"type":15,"tag":46,"props":147,"children":148},{},[149],{"type":21,"value":150},"Continue the Conversation",{"type":21,"value":152}," — Follow up in the same chat to refine",{"type":15,"tag":95,"props":154,"children":156},{"id":155},"what-you-can-ask",[157],{"type":21,"value":158},"What You Can Ask",{"type":15,"tag":160,"props":161,"children":163},"h3",{"id":162},"code-generation",[164],{"type":21,"value":165},"Code Generation",{"type":15,"tag":40,"props":167,"children":168},{},[169],{"type":21,"value":170},"Generate production-ready code in multiple languages:",{"type":15,"tag":40,"props":172,"children":173},{},[174],{"type":15,"tag":46,"props":175,"children":176},{},[177],{"type":21,"value":178},"Python examples:",{"type":15,"tag":180,"props":181,"children":182},"ul",{},[183,188,193],{"type":15,"tag":106,"props":184,"children":185},{},[186],{"type":21,"value":187},"\"Write a function to calculate the average of a list\"",{"type":15,"tag":106,"props":189,"children":190},{},[191],{"type":21,"value":192},"\"Create a decorator that logs function execution time\"",{"type":15,"tag":106,"props":194,"children":195},{},[196],{"type":21,"value":197},"\"Build a class to manage database connections with retry logic\"",{"type":15,"tag":40,"props":199,"children":200},{},[201],{"type":15,"tag":46,"props":202,"children":203},{},[204],{"type":21,"value":205},"SQL examples:",{"type":15,"tag":180,"props":207,"children":208},{},[209,214,219],{"type":15,"tag":106,"props":210,"children":211},{},[212],{"type":21,"value":213},"\"Write a query to find the top 10 customers by revenue\"",{"type":15,"tag":106,"props":215,"children":216},{},[217],{"type":21,"value":218},"\"Create a window function to calculate running totals by month\"",{"type":15,"tag":106,"props":220,"children":221},{},[222],{"type":21,"value":223},"\"Generate a query that joins customer, order, and product tables\"",{"type":15,"tag":40,"props":225,"children":226},{},[227],{"type":15,"tag":46,"props":228,"children":229},{},[230],{"type":21,"value":231},"JavaScript\u002FTypeScript examples:",{"type":15,"tag":180,"props":233,"children":234},{},[235,240,245],{"type":15,"tag":106,"props":236,"children":237},{},[238],{"type":21,"value":239},"\"Create a function to validate email addresses\"",{"type":15,"tag":106,"props":241,"children":242},{},[243],{"type":21,"value":244},"\"Write an async function to fetch data with error handling\"",{"type":15,"tag":106,"props":246,"children":247},{},[248],{"type":21,"value":249},"\"Generate a React component that displays a data table\"",{"type":15,"tag":40,"props":251,"children":252},{},[253],{"type":15,"tag":46,"props":254,"children":255},{},[256],{"type":21,"value":257},"What you get:",{"type":15,"tag":180,"props":259,"children":260},{},[261,266,271,276,281],{"type":15,"tag":106,"props":262,"children":263},{},[264],{"type":21,"value":265},"✅ Working, tested code snippets",{"type":15,"tag":106,"props":267,"children":268},{},[269],{"type":21,"value":270},"✅ Line-by-line explanation of how it works",{"type":15,"tag":106,"props":272,"children":273},{},[274],{"type":21,"value":275},"✅ Usage examples and best practices",{"type":15,"tag":106,"props":277,"children":278},{},[279],{"type":21,"value":280},"✅ Copy button to instantly use in your editor",{"type":15,"tag":106,"props":282,"children":283},{},[284],{"type":21,"value":285},"✅ Suggestions for optimization or alternative approaches",{"type":15,"tag":160,"props":287,"children":289},{"id":288},"data-analysis",[290],{"type":21,"value":291},"Data Analysis",{"type":15,"tag":40,"props":293,"children":294},{},[295],{"type":21,"value":296},"Explore and understand your data without writing complex queries:",{"type":15,"tag":180,"props":298,"children":299},{},[300,310,320,330,340,350],{"type":15,"tag":106,"props":301,"children":302},{},[303,308],{"type":15,"tag":46,"props":304,"children":305},{},[306],{"type":21,"value":307},"Trend Detection",{"type":21,"value":309},": \"What patterns do you see in our sales data over the last quarter?\"",{"type":15,"tag":106,"props":311,"children":312},{},[313,318],{"type":15,"tag":46,"props":314,"children":315},{},[316],{"type":21,"value":317},"Statistical Analysis",{"type":21,"value":319},": \"Show me the correlation between marketing spend and conversion rate\"",{"type":15,"tag":106,"props":321,"children":322},{},[323,328],{"type":15,"tag":46,"props":324,"children":325},{},[326],{"type":21,"value":327},"Outlier Identification",{"type":21,"value":329},": \"Identify unusual values in this customer dataset\"",{"type":15,"tag":106,"props":331,"children":332},{},[333,338],{"type":15,"tag":46,"props":334,"children":335},{},[336],{"type":21,"value":337},"Data Quality",{"type":21,"value":339},": \"Find missing values and data type inconsistencies in this table\"",{"type":15,"tag":106,"props":341,"children":342},{},[343,348],{"type":15,"tag":46,"props":344,"children":345},{},[346],{"type":21,"value":347},"Comparisons",{"type":21,"value":349},": \"Compare these two datasets and show the differences\"",{"type":15,"tag":106,"props":351,"children":352},{},[353,358],{"type":15,"tag":46,"props":354,"children":355},{},[356],{"type":21,"value":357},"Aggregations",{"type":21,"value":359},": \"What are the top 5 product categories by revenue, broken down by region?\"",{"type":15,"tag":40,"props":361,"children":362},{},[363],{"type":21,"value":364},"The assistant helps you understand your data quickly without needing to write analysis code yourself.",{"type":15,"tag":160,"props":366,"children":368},{"id":367},"problem-solving-debugging",[369],{"type":21,"value":370},"Problem Solving & Debugging",{"type":15,"tag":40,"props":372,"children":373},{},[374],{"type":21,"value":375},"Get help troubleshooting, architecture decisions, and technical questions:",{"type":15,"tag":180,"props":377,"children":378},{},[379,389,399,409,419,429,439],{"type":15,"tag":106,"props":380,"children":381},{},[382,387],{"type":15,"tag":46,"props":383,"children":384},{},[385],{"type":21,"value":386},"Error Debugging",{"type":21,"value":388},": Paste an error message and get an explanation plus a fix",{"type":15,"tag":106,"props":390,"children":391},{},[392,397],{"type":15,"tag":46,"props":393,"children":394},{},[395],{"type":21,"value":396},"Database Connectivity",{"type":21,"value":398},": \"How do I connect to our PostgreSQL database from Python?\"",{"type":15,"tag":106,"props":400,"children":401},{},[402,407],{"type":15,"tag":46,"props":403,"children":404},{},[405],{"type":21,"value":406},"Data Architecture",{"type":21,"value":408},": \"Should I use a relational database or a data lake for this use case?\"",{"type":15,"tag":106,"props":410,"children":411},{},[412,417],{"type":15,"tag":46,"props":413,"children":414},{},[415],{"type":21,"value":416},"Performance Issues",{"type":21,"value":418},": \"Why is this query running slowly? How can I optimize it?\"",{"type":15,"tag":106,"props":420,"children":421},{},[422,427],{"type":15,"tag":46,"props":423,"children":424},{},[425],{"type":21,"value":426},"Code Review Questions",{"type":21,"value":428},": \"Is this the best way to structure this function?\"",{"type":15,"tag":106,"props":430,"children":431},{},[432,437],{"type":15,"tag":46,"props":433,"children":434},{},[435],{"type":21,"value":436},"Tool Selection",{"type":21,"value":438},": \"Which library is better for this task, pandas or Polars?\"",{"type":15,"tag":106,"props":440,"children":441},{},[442,447],{"type":15,"tag":46,"props":443,"children":444},{},[445],{"type":21,"value":446},"Configuration Help",{"type":21,"value":448},": \"How do I set up authentication for this API?\"",{"type":15,"tag":40,"props":450,"children":451},{},[452],{"type":21,"value":453},"The assistant draws on best practices and common patterns to help you solve problems faster.",{"type":15,"tag":160,"props":455,"children":457},{"id":456},"documentation-communication",[458],{"type":21,"value":459},"Documentation & Communication",{"type":15,"tag":40,"props":461,"children":462},{},[463],{"type":21,"value":464},"Generate professional documentation automatically:",{"type":15,"tag":180,"props":466,"children":467},{},[468,478,488,498,508,518],{"type":15,"tag":106,"props":469,"children":470},{},[471,476],{"type":15,"tag":46,"props":472,"children":473},{},[474],{"type":21,"value":475},"Code Comments",{"type":21,"value":477},": \"Add detailed comments explaining this complex algorithm\"",{"type":15,"tag":106,"props":479,"children":480},{},[481,486],{"type":15,"tag":46,"props":482,"children":483},{},[484],{"type":21,"value":485},"Function Documentation",{"type":21,"value":487},": \"Write a docstring for this Python function with parameter descriptions\"",{"type":15,"tag":106,"props":489,"children":490},{},[491,496],{"type":15,"tag":46,"props":492,"children":493},{},[494],{"type":21,"value":495},"Project Summaries",{"type":21,"value":497},": \"Create a summary of what this notebook does and what it produces\"",{"type":15,"tag":106,"props":499,"children":500},{},[501,506],{"type":15,"tag":46,"props":502,"children":503},{},[504],{"type":21,"value":505},"README Generation",{"type":21,"value":507},": \"Generate a README for this project including setup and usage instructions\"",{"type":15,"tag":106,"props":509,"children":510},{},[511,516],{"type":15,"tag":46,"props":512,"children":513},{},[514],{"type":21,"value":515},"API Documentation",{"type":21,"value":517},": \"Create documentation for these API endpoints\"",{"type":15,"tag":106,"props":519,"children":520},{},[521,526],{"type":15,"tag":46,"props":522,"children":523},{},[524],{"type":21,"value":525},"Data Dictionary",{"type":21,"value":527},": \"Generate a data dictionary describing all columns in this dataset\"",{"type":15,"tag":40,"props":529,"children":530},{},[531],{"type":21,"value":532},"Save time writing technical documentation and ensure consistency across your project.",{"type":15,"tag":95,"props":534,"children":536},{"id":535},"using-code-suggestions",[537],{"type":21,"value":538},"Using Code Suggestions",{"type":15,"tag":160,"props":540,"children":542},{"id":541},"copy-and-modify-instantly",[543],{"type":21,"value":544},"Copy and Modify Instantly",{"type":15,"tag":102,"props":546,"children":547},{},[548,558,575,585,595],{"type":15,"tag":106,"props":549,"children":550},{},[551,556],{"type":15,"tag":46,"props":552,"children":553},{},[554],{"type":21,"value":555},"View Code",{"type":21,"value":557}," — The assistant displays code in a syntax-highlighted block",{"type":15,"tag":106,"props":559,"children":560},{},[561,566,568,573],{"type":15,"tag":46,"props":562,"children":563},{},[564],{"type":21,"value":565},"Copy Easily",{"type":21,"value":567}," — Click the ",{"type":15,"tag":46,"props":569,"children":570},{},[571],{"type":21,"value":572},"Copy",{"type":21,"value":574}," button to copy the entire code to your clipboard",{"type":15,"tag":106,"props":576,"children":577},{},[578,583],{"type":15,"tag":46,"props":579,"children":580},{},[581],{"type":21,"value":582},"Paste & Adapt",{"type":21,"value":584}," — Paste into your notebook, editor, or SQL client",{"type":15,"tag":106,"props":586,"children":587},{},[588,593],{"type":15,"tag":46,"props":589,"children":590},{},[591],{"type":21,"value":592},"Customize",{"type":21,"value":594}," — Modify the code to fit your specific needs",{"type":15,"tag":106,"props":596,"children":597},{},[598,603],{"type":15,"tag":46,"props":599,"children":600},{},[601],{"type":21,"value":602},"Test",{"type":21,"value":604}," — Run and verify it works in your environment",{"type":15,"tag":160,"props":606,"children":608},{"id":607},"context-aware-suggestions",[609],{"type":21,"value":610},"Context-Aware Suggestions",{"type":15,"tag":40,"props":612,"children":613},{},[614],{"type":21,"value":615},"The assistant understands your environment:",{"type":15,"tag":180,"props":617,"children":618},{},[619,629,639,649],{"type":15,"tag":106,"props":620,"children":621},{},[622,627],{"type":15,"tag":46,"props":623,"children":624},{},[625],{"type":21,"value":626},"Your Data",{"type":21,"value":628}," — Column names, data types, and table structures you've shared",{"type":15,"tag":106,"props":630,"children":631},{},[632,637],{"type":15,"tag":46,"props":633,"children":634},{},[635],{"type":21,"value":636},"Code History",{"type":21,"value":638}," — Previously written code and patterns in your notebook",{"type":15,"tag":106,"props":640,"children":641},{},[642,647],{"type":15,"tag":46,"props":643,"children":644},{},[645],{"type":21,"value":646},"Configuration",{"type":21,"value":648}," — Your system setup, installed libraries, and database connections",{"type":15,"tag":106,"props":650,"children":651},{},[652,657],{"type":15,"tag":46,"props":653,"children":654},{},[655],{"type":21,"value":656},"Project Context",{"type":21,"value":658}," — Naming conventions and architectural patterns you're using",{"type":15,"tag":40,"props":660,"children":661},{},[662],{"type":21,"value":663},"This means suggestions are tailored to your specific use case, not generic examples.",{"type":15,"tag":160,"props":665,"children":667},{"id":666},"multi-turn-conversations-refine-as-you-go",[668],{"type":21,"value":669},"Multi-Turn Conversations (Refine as You Go)",{"type":15,"tag":40,"props":671,"children":672},{},[673],{"type":21,"value":674},"Have a real conversation with the assistant to iterate and improve:",{"type":15,"tag":676,"props":677,"children":679},"pre",{"code":678},"You: \"Write a sorting algorithm for a list of numbers\"\nAssistant: [provides a clean sorting function]\n\nYou: \"Can you make it work with objects too, sorting by a property?\"\nAssistant: [updates code to handle objects with custom sorting logic]\n\nYou: \"Add detailed comments explaining each step\"\nAssistant: [adds line-by-line comments explaining the algorithm]\n\nYou: \"Show me how to use this with async operations\"\nAssistant: [provides async\u002Fawait version with examples]\n",[680],{"type":15,"tag":53,"props":681,"children":682},{"__ignoreMap":8},[683],{"type":21,"value":678},{"type":15,"tag":40,"props":685,"children":686},{},[687],{"type":21,"value":688},"Each response builds on the previous one—no need to repeat context.",{"type":15,"tag":95,"props":690,"children":692},{"id":691},"best-practices-for-better-results",[693],{"type":21,"value":694},"Best Practices for Better Results",{"type":15,"tag":160,"props":696,"children":698},{"id":697},"_1-be-specific-descriptive",[699],{"type":21,"value":700},"1. Be Specific & Descriptive",{"type":15,"tag":40,"props":702,"children":703},{},[704],{"type":15,"tag":46,"props":705,"children":706},{},[707],{"type":21,"value":708},"Good Questions:",{"type":15,"tag":180,"props":710,"children":711},{},[712,717,722],{"type":15,"tag":106,"props":713,"children":714},{},[715],{"type":21,"value":716},"\"Write a function that takes a pandas DataFrame and returns only rows where sales > 1000\"",{"type":15,"tag":106,"props":718,"children":719},{},[720],{"type":21,"value":721},"\"Create a stored procedure that calculates monthly revenue trends for each product category\"",{"type":15,"tag":106,"props":723,"children":724},{},[725],{"type":21,"value":726},"\"Write a regex pattern that validates US phone numbers in the format (XXX) XXX-XXXX\"",{"type":15,"tag":40,"props":728,"children":729},{},[730],{"type":15,"tag":46,"props":731,"children":732},{},[733],{"type":21,"value":734},"Vague Questions (less useful):",{"type":15,"tag":180,"props":736,"children":737},{},[738,743,748],{"type":15,"tag":106,"props":739,"children":740},{},[741],{"type":21,"value":742},"\"Filter data\"",{"type":15,"tag":106,"props":744,"children":745},{},[746],{"type":21,"value":747},"\"Calculate revenue\"",{"type":15,"tag":106,"props":749,"children":750},{},[751],{"type":21,"value":752},"\"Validate numbers\"",{"type":15,"tag":40,"props":754,"children":755},{},[756,761],{"type":15,"tag":46,"props":757,"children":758},{},[759],{"type":21,"value":760},"Why it matters:",{"type":21,"value":762}," Specific requests produce exact code; vague ones require follow-ups and assumptions.",{"type":15,"tag":160,"props":764,"children":766},{"id":765},"_2-include-relevant-context",[767],{"type":21,"value":768},"2. Include Relevant Context",{"type":15,"tag":40,"props":770,"children":771},{},[772],{"type":15,"tag":46,"props":773,"children":774},{},[775],{"type":21,"value":776},"Good Context:",{"type":15,"tag":180,"props":778,"children":779},{},[780,785,790],{"type":15,"tag":106,"props":781,"children":782},{},[783],{"type":21,"value":784},"\"I have user data with columns: id, email, created_date, last_login. Show me inactive users (no login in 90 days)\"",{"type":15,"tag":106,"props":786,"children":787},{},[788],{"type":21,"value":789},"\"My database has orders (id, customer_id, amount, date) and customers (id, name, region). Write a query for...\"",{"type":15,"tag":106,"props":791,"children":792},{},[793],{"type":21,"value":794},"\"I'm using Python 3.11 with pandas 2.0. How do I...\"",{"type":15,"tag":40,"props":796,"children":797},{},[798,802],{"type":15,"tag":46,"props":799,"children":800},{},[801],{"type":21,"value":760},{"type":21,"value":803}," Context prevents the assistant from making wrong assumptions about your data structure or environment.",{"type":15,"tag":160,"props":805,"children":807},{"id":806},"_3-ask-for-explanations",[808],{"type":21,"value":809},"3. Ask for Explanations",{"type":15,"tag":40,"props":811,"children":812},{},[813],{"type":21,"value":814},"Don't just ask for code—ask for understanding:",{"type":15,"tag":180,"props":816,"children":817},{},[818,823,828,833],{"type":15,"tag":106,"props":819,"children":820},{},[821],{"type":21,"value":822},"\"Explain this error message and how to fix it\"",{"type":15,"tag":106,"props":824,"children":825},{},[826],{"type":21,"value":827},"\"What does this SQL query do step-by-step?\"",{"type":15,"tag":106,"props":829,"children":830},{},[831],{"type":21,"value":832},"\"Walk me through how this algorithm works\"",{"type":15,"tag":106,"props":834,"children":835},{},[836],{"type":21,"value":837},"\"Why would you choose this approach over an alternative?\"",{"type":15,"tag":40,"props":839,"children":840},{},[841,845],{"type":15,"tag":46,"props":842,"children":843},{},[844],{"type":21,"value":760},{"type":21,"value":846}," Understanding the \"why\" helps you adapt solutions to similar problems later.",{"type":15,"tag":95,"props":848,"children":850},{"id":849},"what-the-ai-assistant-can-cannot-do",[851],{"type":21,"value":852},"What the AI Assistant Can & Cannot Do",{"type":15,"tag":160,"props":854,"children":856},{"id":855},"what-it-can-do",[857],{"type":21,"value":858},"✅ What It Can Do",{"type":15,"tag":180,"props":860,"children":861},{},[862,872,882,892,902,912,922,932,942,952],{"type":15,"tag":106,"props":863,"children":864},{},[865,870],{"type":15,"tag":46,"props":866,"children":867},{},[868],{"type":21,"value":869},"Write & Explain Code",{"type":21,"value":871}," — Generates working code with detailed explanations",{"type":15,"tag":106,"props":873,"children":874},{},[875,880],{"type":15,"tag":46,"props":876,"children":877},{},[878],{"type":21,"value":879},"Analyze Data",{"type":21,"value":881}," — Identifies trends, correlations, outliers, and anomalies",{"type":15,"tag":106,"props":883,"children":884},{},[885,890],{"type":15,"tag":46,"props":886,"children":887},{},[888],{"type":21,"value":889},"Query Your Tenant Data",{"type":21,"value":891}," — Uses secure tenant-scoped tools to read your own data and resources",{"type":15,"tag":106,"props":893,"children":894},{},[895,900],{"type":15,"tag":46,"props":896,"children":897},{},[898],{"type":21,"value":899},"Modify Your Tenant Resources",{"type":21,"value":901}," — Creates, updates, and deletes records in your tenant when you ask it to perform actions",{"type":15,"tag":106,"props":903,"children":904},{},[905,910],{"type":15,"tag":46,"props":906,"children":907},{},[908],{"type":21,"value":909},"Trigger Workflows",{"type":21,"value":911}," — Starts workflows inside your account with your permission",{"type":15,"tag":106,"props":913,"children":914},{},[915,920],{"type":15,"tag":46,"props":916,"children":917},{},[918],{"type":21,"value":919},"Answer Technical Questions",{"type":21,"value":921}," — Solves architecture, performance, and design problems",{"type":15,"tag":106,"props":923,"children":924},{},[925,930],{"type":15,"tag":46,"props":926,"children":927},{},[928],{"type":21,"value":929},"Suggest Best Practices",{"type":21,"value":931}," — Provides industry-standard patterns and optimization tips",{"type":15,"tag":106,"props":933,"children":934},{},[935,940],{"type":15,"tag":46,"props":936,"children":937},{},[938],{"type":21,"value":939},"Debug Errors",{"type":21,"value":941}," — Explains error messages and provides fixes",{"type":15,"tag":106,"props":943,"children":944},{},[945,950],{"type":15,"tag":46,"props":946,"children":947},{},[948],{"type":21,"value":949},"Generate Documentation",{"type":21,"value":951}," — Creates comments, docstrings, READMEs, and data dictionaries",{"type":15,"tag":106,"props":953,"children":954},{},[955,960],{"type":15,"tag":46,"props":956,"children":957},{},[958],{"type":21,"value":959},"Compare Approaches",{"type":21,"value":961}," — Weighs pros\u002Fcons of different solutions",{"type":15,"tag":160,"props":963,"children":965},{"id":964},"what-it-cannot-do",[966],{"type":21,"value":967},"❌ What It Cannot Do",{"type":15,"tag":180,"props":969,"children":970},{},[971,981,991,1001,1011,1021],{"type":15,"tag":106,"props":972,"children":973},{},[974,979],{"type":15,"tag":46,"props":975,"children":976},{},[977],{"type":21,"value":978},"Access Other Tenants",{"type":21,"value":980}," — The assistant can only access data inside your own tenant",{"type":15,"tag":106,"props":982,"children":983},{},[984,989],{"type":15,"tag":46,"props":985,"children":986},{},[987],{"type":21,"value":988},"Bypass Permissions",{"type":21,"value":990}," — It only acts on resources your role and tenant settings allow",{"type":15,"tag":106,"props":992,"children":993},{},[994,999],{"type":15,"tag":46,"props":995,"children":996},{},[997],{"type":21,"value":998},"Perform Unapproved System Changes",{"type":21,"value":1000}," — It cannot change platform-wide settings without explicit approval",{"type":15,"tag":106,"props":1002,"children":1003},{},[1004,1009],{"type":15,"tag":46,"props":1005,"children":1006},{},[1007],{"type":21,"value":1008},"Execute Arbitrary Code Without Consent",{"type":21,"value":1010}," — It can suggest code and perform guided actions, but you still review and confirm before major changes",{"type":15,"tag":106,"props":1012,"children":1013},{},[1014,1019],{"type":15,"tag":46,"props":1015,"children":1016},{},[1017],{"type":21,"value":1018},"Handle Unlimited Conversations",{"type":21,"value":1020}," — Very long conversations (100+ messages) may lose early context. Start a new chat if needed",{"type":15,"tag":106,"props":1022,"children":1023},{},[1024,1029],{"type":15,"tag":46,"props":1025,"children":1026},{},[1027],{"type":21,"value":1028},"Modify Files on Your System",{"type":21,"value":1030}," — It suggests code changes; you apply them manually",{"type":15,"tag":160,"props":1032,"children":1034},{"id":1033},"how-agent-actions-work",[1035],{"type":21,"value":1036},"How Agent Actions Work",{"type":15,"tag":40,"props":1038,"children":1039},{},[1040],{"type":21,"value":1041},"When the assistant performs tenant actions, it uses a secure backend tool layer:",{"type":15,"tag":180,"props":1043,"children":1044},{},[1045,1050,1055,1060],{"type":15,"tag":106,"props":1046,"children":1047},{},[1048],{"type":21,"value":1049},"Your request is sent with your user and tenant context",{"type":15,"tag":106,"props":1051,"children":1052},{},[1053],{"type":21,"value":1054},"Backend APIs enforce tenant isolation for every operation",{"type":15,"tag":106,"props":1056,"children":1057},{},[1058],{"type":21,"value":1059},"The assistant can query collections, list resources, create\u002Fupdate\u002Fdelete records, and trigger workflows",{"type":15,"tag":106,"props":1061,"children":1062},{},[1063],{"type":21,"value":1064},"All actions are logged and scoped to your account only",{"type":15,"tag":40,"props":1066,"children":1067},{},[1068],{"type":15,"tag":46,"props":1069,"children":1070},{},[1071],{"type":21,"value":1072},"What the assistant can do with tenant-aware tools:",{"type":15,"tag":180,"props":1074,"children":1075},{},[1076,1081,1086,1091,1096,1101],{"type":15,"tag":106,"props":1077,"children":1078},{},[1079],{"type":21,"value":1080},"Query tables, datasets, notebooks, and collections",{"type":15,"tag":106,"props":1082,"children":1083},{},[1084],{"type":21,"value":1085},"List available clusters, workflows, functions, and datasets",{"type":15,"tag":106,"props":1087,"children":1088},{},[1089],{"type":21,"value":1090},"Create new records in your tenant",{"type":15,"tag":106,"props":1092,"children":1093},{},[1094],{"type":21,"value":1095},"Update existing records that belong to your tenant",{"type":15,"tag":106,"props":1097,"children":1098},{},[1099],{"type":21,"value":1100},"Delete records only within your tenant and with confirmation for bulk changes",{"type":15,"tag":106,"props":1102,"children":1103},{},[1104],{"type":21,"value":1105},"Trigger workflows and report execution status",{"type":15,"tag":160,"props":1107,"children":1109},{"id":1108},"important-youre-always-in-control",[1110],{"type":21,"value":1111},"💡 Important: You're Always in Control",{"type":15,"tag":40,"props":1113,"children":1114},{},[1115],{"type":21,"value":1116},"The assistant is not operating on other accounts. It works only inside your tenant and only with the permissions your role allows. Review every change before you accept it.",{"type":15,"tag":95,"props":1118,"children":1120},{"id":1119},"pro-tips-for-getting-the-best-results",[1121],{"type":21,"value":1122},"Pro Tips for Getting the Best Results",{"type":15,"tag":160,"props":1124,"children":1126},{"id":1125},"show-examples-of-your-data",[1127],{"type":21,"value":1128},"Show Examples of Your Data",{"type":15,"tag":40,"props":1130,"children":1131},{},[1132,1137],{"type":15,"tag":46,"props":1133,"children":1134},{},[1135],{"type":21,"value":1136},"Instead of:",{"type":21,"value":1138}," \"Calculate the average score\"",{"type":15,"tag":40,"props":1140,"children":1141},{},[1142,1147],{"type":15,"tag":46,"props":1143,"children":1144},{},[1145],{"type":21,"value":1146},"Say:",{"type":21,"value":1148}," \"I have data structured like this:",{"type":15,"tag":676,"props":1150,"children":1154},{"code":1151,"language":1152,"meta":8,"className":1153,"style":8},"{\n  \"id\": 1,\n  \"name\": \"Alice\",\n  \"score\": 95,\n  \"date\": \"2024-01-15\"\n}\n","json","language-json shiki shiki-themes github-dark",[1155],{"type":15,"tag":53,"props":1156,"children":1157},{"__ignoreMap":8},[1158,1170,1195,1218,1240,1258],{"type":15,"tag":1159,"props":1160,"children":1163},"span",{"class":1161,"line":1162},"line",1,[1164],{"type":15,"tag":1159,"props":1165,"children":1167},{"style":1166},"--shiki-default:#E1E4E8",[1168],{"type":21,"value":1169},"{\n",{"type":15,"tag":1159,"props":1171,"children":1173},{"class":1161,"line":1172},2,[1174,1180,1185,1190],{"type":15,"tag":1159,"props":1175,"children":1177},{"style":1176},"--shiki-default:#79B8FF",[1178],{"type":21,"value":1179},"  \"id\"",{"type":15,"tag":1159,"props":1181,"children":1182},{"style":1166},[1183],{"type":21,"value":1184},": ",{"type":15,"tag":1159,"props":1186,"children":1187},{"style":1176},[1188],{"type":21,"value":1189},"1",{"type":15,"tag":1159,"props":1191,"children":1192},{"style":1166},[1193],{"type":21,"value":1194},",\n",{"type":15,"tag":1159,"props":1196,"children":1198},{"class":1161,"line":1197},3,[1199,1204,1208,1214],{"type":15,"tag":1159,"props":1200,"children":1201},{"style":1176},[1202],{"type":21,"value":1203},"  \"name\"",{"type":15,"tag":1159,"props":1205,"children":1206},{"style":1166},[1207],{"type":21,"value":1184},{"type":15,"tag":1159,"props":1209,"children":1211},{"style":1210},"--shiki-default:#9ECBFF",[1212],{"type":21,"value":1213},"\"Alice\"",{"type":15,"tag":1159,"props":1215,"children":1216},{"style":1166},[1217],{"type":21,"value":1194},{"type":15,"tag":1159,"props":1219,"children":1221},{"class":1161,"line":1220},4,[1222,1227,1231,1236],{"type":15,"tag":1159,"props":1223,"children":1224},{"style":1176},[1225],{"type":21,"value":1226},"  \"score\"",{"type":15,"tag":1159,"props":1228,"children":1229},{"style":1166},[1230],{"type":21,"value":1184},{"type":15,"tag":1159,"props":1232,"children":1233},{"style":1176},[1234],{"type":21,"value":1235},"95",{"type":15,"tag":1159,"props":1237,"children":1238},{"style":1166},[1239],{"type":21,"value":1194},{"type":15,"tag":1159,"props":1241,"children":1243},{"class":1161,"line":1242},5,[1244,1249,1253],{"type":15,"tag":1159,"props":1245,"children":1246},{"style":1176},[1247],{"type":21,"value":1248},"  \"date\"",{"type":15,"tag":1159,"props":1250,"children":1251},{"style":1166},[1252],{"type":21,"value":1184},{"type":15,"tag":1159,"props":1254,"children":1255},{"style":1210},[1256],{"type":21,"value":1257},"\"2024-01-15\"\n",{"type":15,"tag":1159,"props":1259,"children":1261},{"class":1161,"line":1260},6,[1262],{"type":15,"tag":1159,"props":1263,"children":1264},{"style":1166},[1265],{"type":21,"value":1266},"}\n",{"type":15,"tag":40,"props":1268,"children":1269},{},[1270],{"type":21,"value":1271},"Write code to calculate the average score by month.\"",{"type":15,"tag":40,"props":1273,"children":1274},{},[1275,1280],{"type":15,"tag":46,"props":1276,"children":1277},{},[1278],{"type":21,"value":1279},"Why:",{"type":21,"value":1281}," Showing the actual data structure means the assistant writes code that works with your exact schema.",{"type":15,"tag":160,"props":1283,"children":1285},{"id":1284},"use-technical-language",[1286],{"type":21,"value":1287},"Use Technical Language",{"type":15,"tag":40,"props":1289,"children":1290},{},[1291],{"type":21,"value":1292},"Don't simplify—use the real terms:",{"type":15,"tag":180,"props":1294,"children":1295},{},[1296,1306],{"type":15,"tag":106,"props":1297,"children":1298},{},[1299,1304],{"type":15,"tag":46,"props":1300,"children":1301},{},[1302],{"type":21,"value":1303},"Good:",{"type":21,"value":1305}," \"Add memoization to optimize recursive calls\"",{"type":15,"tag":106,"props":1307,"children":1308},{},[1309,1314],{"type":15,"tag":46,"props":1310,"children":1311},{},[1312],{"type":21,"value":1313},"Less clear:",{"type":21,"value":1315}," \"Make this faster\"",{"type":15,"tag":40,"props":1317,"children":1318},{},[1319],{"type":21,"value":1320},"The assistant understands:",{"type":15,"tag":180,"props":1322,"children":1323},{},[1324,1329,1334],{"type":15,"tag":106,"props":1325,"children":1326},{},[1327],{"type":21,"value":1328},"Programming concepts: Recursion, memoization, pagination, caching, middleware",{"type":15,"tag":106,"props":1330,"children":1331},{},[1332],{"type":21,"value":1333},"Data terms: DataFrame, aggregate, index, transaction, normalization",{"type":15,"tag":106,"props":1335,"children":1336},{},[1337],{"type":21,"value":1338},"Architecture: REST APIs, GraphQL, webhooks, microservices, event-driven",{"type":15,"tag":160,"props":1340,"children":1342},{"id":1341},"ask-why-questions-not-just-how",[1343],{"type":21,"value":1344},"Ask \"Why\" Questions, Not Just \"How\"",{"type":15,"tag":40,"props":1346,"children":1347},{},[1348],{"type":15,"tag":46,"props":1349,"children":1350},{},[1351],{"type":21,"value":1352},"Better Questions:",{"type":15,"tag":180,"props":1354,"children":1355},{},[1356,1361,1366,1371],{"type":15,"tag":106,"props":1357,"children":1358},{},[1359],{"type":21,"value":1360},"\"Why should I use async\u002Fawait for this operation?\"",{"type":15,"tag":106,"props":1362,"children":1363},{},[1364],{"type":21,"value":1365},"\"When is a NoSQL database better than a relational database?\"",{"type":15,"tag":106,"props":1367,"children":1368},{},[1369],{"type":21,"value":1370},"\"What are the tradeoffs of this design pattern?\"",{"type":15,"tag":106,"props":1372,"children":1373},{},[1374],{"type":21,"value":1375},"\"What performance impact would this change have?\"",{"type":15,"tag":40,"props":1377,"children":1378},{},[1379,1383],{"type":15,"tag":46,"props":1380,"children":1381},{},[1382],{"type":21,"value":760},{"type":21,"value":1384}," Understanding the reasoning helps you make better decisions and adapt to future problems.",{"type":15,"tag":95,"props":1386,"children":1388},{"id":1387},"real-world-examples",[1389],{"type":21,"value":1390},"Real-World Examples",{"type":15,"tag":160,"props":1392,"children":1394},{"id":1393},"example-1-converting-between-languages",[1395],{"type":21,"value":1396},"Example 1: Converting Between Languages",{"type":15,"tag":40,"props":1398,"children":1399},{},[1400,1405],{"type":15,"tag":46,"props":1401,"children":1402},{},[1403],{"type":21,"value":1404},"You ask:",{"type":21,"value":1406}," \"Convert this SQL query to Python using pandas\"",{"type":15,"tag":676,"props":1408,"children":1412},{"code":1409,"language":1410,"meta":8,"className":1411,"style":8},"SELECT customer_id, COUNT(*) as order_count, SUM(amount) as total\nFROM orders\nWHERE date >= '2024-01-01'\nGROUP BY customer_id\nHAVING SUM(amount) > 1000\nORDER BY total DESC;\n","sql","language-sql shiki shiki-themes github-dark",[1413],{"type":15,"tag":53,"props":1414,"children":1415},{"__ignoreMap":8},[1416,1424,1432,1440,1448,1456],{"type":15,"tag":1159,"props":1417,"children":1418},{"class":1161,"line":1162},[1419],{"type":15,"tag":1159,"props":1420,"children":1421},{},[1422],{"type":21,"value":1423},"SELECT customer_id, COUNT(*) as order_count, SUM(amount) as total\n",{"type":15,"tag":1159,"props":1425,"children":1426},{"class":1161,"line":1172},[1427],{"type":15,"tag":1159,"props":1428,"children":1429},{},[1430],{"type":21,"value":1431},"FROM orders\n",{"type":15,"tag":1159,"props":1433,"children":1434},{"class":1161,"line":1197},[1435],{"type":15,"tag":1159,"props":1436,"children":1437},{},[1438],{"type":21,"value":1439},"WHERE date >= '2024-01-01'\n",{"type":15,"tag":1159,"props":1441,"children":1442},{"class":1161,"line":1220},[1443],{"type":15,"tag":1159,"props":1444,"children":1445},{},[1446],{"type":21,"value":1447},"GROUP BY customer_id\n",{"type":15,"tag":1159,"props":1449,"children":1450},{"class":1161,"line":1242},[1451],{"type":15,"tag":1159,"props":1452,"children":1453},{},[1454],{"type":21,"value":1455},"HAVING SUM(amount) > 1000\n",{"type":15,"tag":1159,"props":1457,"children":1458},{"class":1161,"line":1260},[1459],{"type":15,"tag":1159,"props":1460,"children":1461},{},[1462],{"type":21,"value":1463},"ORDER BY total DESC;\n",{"type":15,"tag":40,"props":1465,"children":1466},{},[1467,1472],{"type":15,"tag":46,"props":1468,"children":1469},{},[1470],{"type":21,"value":1471},"Assistant provides:",{"type":21,"value":1473}," Python code using pandas, with explanation of each operation and performance tips.",{"type":15,"tag":160,"props":1475,"children":1477},{"id":1476},"example-2-optimizing-slow-code",[1478],{"type":21,"value":1479},"Example 2: Optimizing Slow Code",{"type":15,"tag":40,"props":1481,"children":1482},{},[1483,1488],{"type":15,"tag":46,"props":1484,"children":1485},{},[1486],{"type":21,"value":1487},"You:",{"type":21,"value":1489}," \"This code runs slowly on large datasets (1M+ rows). How can I optimize it?\"",{"type":15,"tag":676,"props":1491,"children":1495},{"code":1492,"language":1493,"meta":8,"className":1494,"style":8},"result = []\nfor row in data:\n    if row['status'] == 'active':\n        result.append(process(row))\n","python","language-python shiki shiki-themes github-dark",[1496],{"type":15,"tag":53,"props":1497,"children":1498},{"__ignoreMap":8},[1499,1507,1515,1523],{"type":15,"tag":1159,"props":1500,"children":1501},{"class":1161,"line":1162},[1502],{"type":15,"tag":1159,"props":1503,"children":1504},{},[1505],{"type":21,"value":1506},"result = []\n",{"type":15,"tag":1159,"props":1508,"children":1509},{"class":1161,"line":1172},[1510],{"type":15,"tag":1159,"props":1511,"children":1512},{},[1513],{"type":21,"value":1514},"for row in data:\n",{"type":15,"tag":1159,"props":1516,"children":1517},{"class":1161,"line":1197},[1518],{"type":15,"tag":1159,"props":1519,"children":1520},{},[1521],{"type":21,"value":1522},"    if row['status'] == 'active':\n",{"type":15,"tag":1159,"props":1524,"children":1525},{"class":1161,"line":1220},[1526],{"type":15,"tag":1159,"props":1527,"children":1528},{},[1529],{"type":21,"value":1530},"        result.append(process(row))\n",{"type":15,"tag":40,"props":1532,"children":1533},{},[1534,1539],{"type":15,"tag":46,"props":1535,"children":1536},{},[1537],{"type":21,"value":1538},"Assistant:",{"type":21,"value":1540}," Suggests vectorization with pandas\u002FNumPy, shows the optimized version, explains the performance improvement (e.g., \"10x faster on your dataset size\").",{"type":15,"tag":160,"props":1542,"children":1544},{"id":1543},"example-3-debugging-an-error",[1545],{"type":21,"value":1546},"Example 3: Debugging an Error",{"type":15,"tag":40,"props":1548,"children":1549},{},[1550,1554,1556],{"type":15,"tag":46,"props":1551,"children":1552},{},[1553],{"type":21,"value":1487},{"type":21,"value":1555}," ",{"type":15,"tag":1159,"props":1557,"children":1558},{},[1559],{"type":21,"value":1560},"paste this error",{"type":15,"tag":676,"props":1562,"children":1564},{"code":1563},"TypeError: unsupported operand type(s) for +: 'int' and 'str'\n  File \"script.py\", line 15, in calculate\n    total = sum_value + user_input\n",[1565],{"type":15,"tag":53,"props":1566,"children":1567},{"__ignoreMap":8},[1568],{"type":21,"value":1563},{"type":15,"tag":40,"props":1570,"children":1571},{},[1572],{"type":15,"tag":46,"props":1573,"children":1574},{},[1575],{"type":21,"value":1538},{"type":15,"tag":180,"props":1577,"children":1578},{},[1579,1584,1589],{"type":15,"tag":106,"props":1580,"children":1581},{},[1582],{"type":21,"value":1583},"Explains: \"You're trying to add an integer and a string. Python doesn't know how to combine them.\"",{"type":15,"tag":106,"props":1585,"children":1586},{},[1587],{"type":21,"value":1588},"Shows the fix: Convert the string to an integer first",{"type":15,"tag":106,"props":1590,"children":1591},{},[1592],{"type":21,"value":1593},"Provides corrected code and explains how to prevent this in the future",{"type":15,"tag":95,"props":1595,"children":1597},{"id":1596},"privacy-security",[1598],{"type":21,"value":1599},"Privacy & Security",{"type":15,"tag":160,"props":1601,"children":1603},{"id":1602},"your-data-is-safe",[1604],{"type":21,"value":1605},"Your Data is Safe",{"type":15,"tag":180,"props":1607,"children":1608},{},[1609,1621,1633,1645,1657],{"type":15,"tag":106,"props":1610,"children":1611},{},[1612,1614,1619],{"type":21,"value":1613},"🔒 ",{"type":15,"tag":46,"props":1615,"children":1616},{},[1617],{"type":21,"value":1618},"Encrypted Conversations",{"type":21,"value":1620}," — All messages between you and the assistant are encrypted in transit and at rest",{"type":15,"tag":106,"props":1622,"children":1623},{},[1624,1626,1631],{"type":21,"value":1625},"🔐 ",{"type":15,"tag":46,"props":1627,"children":1628},{},[1629],{"type":21,"value":1630},"No Storage of Secrets",{"type":21,"value":1632}," — Passwords, API keys, and sensitive credentials are never logged or stored",{"type":15,"tag":106,"props":1634,"children":1635},{},[1636,1638,1643],{"type":21,"value":1637},"🚫 ",{"type":15,"tag":46,"props":1639,"children":1640},{},[1641],{"type":21,"value":1642},"Private Code",{"type":21,"value":1644}," — Your code and conversations stay private to your account and organization",{"type":15,"tag":106,"props":1646,"children":1647},{},[1648,1650,1655],{"type":21,"value":1649},"👥 ",{"type":15,"tag":46,"props":1651,"children":1652},{},[1653],{"type":21,"value":1654},"Team Isolation",{"type":21,"value":1656}," — Other team members cannot see your individual chats or ask history",{"type":15,"tag":106,"props":1658,"children":1659},{},[1660,1662,1667],{"type":21,"value":1661},"✅ ",{"type":15,"tag":46,"props":1663,"children":1664},{},[1665],{"type":21,"value":1666},"Your Control",{"type":21,"value":1668}," — You decide what information to share; the assistant only sees what you type",{"type":15,"tag":160,"props":1670,"children":1672},{"id":1671},"best-practices-for-security",[1673],{"type":21,"value":1674},"Best Practices for Security",{"type":15,"tag":180,"props":1676,"children":1677},{},[1678,1683,1688,1693],{"type":15,"tag":106,"props":1679,"children":1680},{},[1681],{"type":21,"value":1682},"Never paste real API keys or passwords—describe them instead (\"My database password is stored in an environment variable\")",{"type":15,"tag":106,"props":1684,"children":1685},{},[1686],{"type":21,"value":1687},"Don't share customer data directly—use anonymized examples instead",{"type":15,"tag":106,"props":1689,"children":1690},{},[1691],{"type":21,"value":1692},"Review generated code before using it in production",{"type":15,"tag":106,"props":1694,"children":1695},{},[1696],{"type":21,"value":1697},"Report any concerning assistant behavior to your security team",{"type":15,"tag":95,"props":1699,"children":1701},{"id":1700},"related-features",[1702],{"type":21,"value":1703},"Related Features",{"type":15,"tag":180,"props":1705,"children":1706},{},[1707,1717,1731,1745],{"type":15,"tag":106,"props":1708,"children":1709},{},[1710,1715],{"type":15,"tag":46,"props":1711,"children":1712},{},[1713],{"type":21,"value":1714},"Notebook",{"type":21,"value":1716}," — Open Notebook from the dashboard sidebar to run and test assistant-generated code",{"type":15,"tag":106,"props":1718,"children":1719},{},[1720,1729],{"type":15,"tag":46,"props":1721,"children":1722},{},[1723],{"type":15,"tag":62,"props":1724,"children":1726},{"href":1725},"\u002Fdocs\u002Ffeatures\u002Fworkflows",[1727],{"type":21,"value":1728},"Workflows",{"type":21,"value":1730}," — Run and monitor workflow actions triggered by the assistant",{"type":15,"tag":106,"props":1732,"children":1733},{},[1734,1743],{"type":15,"tag":46,"props":1735,"children":1736},{},[1737],{"type":15,"tag":62,"props":1738,"children":1740},{"href":1739},"\u002Fdocs\u002Ffeatures\u002Fapi-keys",[1741],{"type":21,"value":1742},"API Keys",{"type":21,"value":1744}," — Securely manage API credentials for integrations and external services",{"type":15,"tag":106,"props":1746,"children":1747},{},[1748,1757],{"type":15,"tag":46,"props":1749,"children":1750},{},[1751],{"type":15,"tag":62,"props":1752,"children":1754},{"href":1753},"\u002Fdocs\u002Ffeatures\u002Faudit-logs",[1755],{"type":21,"value":1756},"Audit Logs",{"type":21,"value":1758}," — Review all agent actions and tenant activity",{"type":15,"tag":95,"props":1760,"children":1762},{"id":1761},"next-steps",[1763],{"type":21,"value":1764},"Next Steps",{"type":15,"tag":102,"props":1766,"children":1767},{},[1768,1773,1778,1783,1788],{"type":15,"tag":106,"props":1769,"children":1770},{},[1771],{"type":21,"value":1772},"Open the AI Assistant from the sidebar",{"type":15,"tag":106,"props":1774,"children":1775},{},[1776],{"type":21,"value":1777},"Ask a specific question or task for your tenant data",{"type":15,"tag":106,"props":1779,"children":1780},{},[1781],{"type":21,"value":1782},"Review the assistant's proposed action before confirming changes",{"type":15,"tag":106,"props":1784,"children":1785},{},[1786],{"type":21,"value":1787},"Test the generated code or query results in your notebook or editor",{"type":15,"tag":106,"props":1789,"children":1790},{},[1791],{"type":21,"value":1792},"Check audit logs and workflow status after the action completes",{"type":15,"tag":1794,"props":1795,"children":1796},"style",{},[1797],{"type":21,"value":1798},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":8,"searchDepth":1172,"depth":1172,"links":1800},[1801,1802,1808,1813,1818,1824,1829,1834,1838,1839],{"id":97,"depth":1172,"text":100},{"id":155,"depth":1172,"text":158,"children":1803},[1804,1805,1806,1807],{"id":162,"depth":1197,"text":165},{"id":288,"depth":1197,"text":291},{"id":367,"depth":1197,"text":370},{"id":456,"depth":1197,"text":459},{"id":535,"depth":1172,"text":538,"children":1809},[1810,1811,1812],{"id":541,"depth":1197,"text":544},{"id":607,"depth":1197,"text":610},{"id":666,"depth":1197,"text":669},{"id":691,"depth":1172,"text":694,"children":1814},[1815,1816,1817],{"id":697,"depth":1197,"text":700},{"id":765,"depth":1197,"text":768},{"id":806,"depth":1197,"text":809},{"id":849,"depth":1172,"text":852,"children":1819},[1820,1821,1822,1823],{"id":855,"depth":1197,"text":858},{"id":964,"depth":1197,"text":967},{"id":1033,"depth":1197,"text":1036},{"id":1108,"depth":1197,"text":1111},{"id":1119,"depth":1172,"text":1122,"children":1825},[1826,1827,1828],{"id":1125,"depth":1197,"text":1128},{"id":1284,"depth":1197,"text":1287},{"id":1341,"depth":1197,"text":1344},{"id":1387,"depth":1172,"text":1390,"children":1830},[1831,1832,1833],{"id":1393,"depth":1197,"text":1396},{"id":1476,"depth":1197,"text":1479},{"id":1543,"depth":1197,"text":1546},{"id":1596,"depth":1172,"text":1599,"children":1835},[1836,1837],{"id":1602,"depth":1197,"text":1605},{"id":1671,"depth":1197,"text":1674},{"id":1700,"depth":1172,"text":1703},{"id":1761,"depth":1172,"text":1764},"markdown","content:docs:features:ai-assistant.md","content","docs\u002Ffeatures\u002Fai-assistant.md","docs\u002Ffeatures\u002Fai-assistant","md",1794695987101]