Snowflake Cortex Code: develop and check your changes

Use the coding assistant currently documented as Snowflake CoCo with a bounded task, clear environment details, and checks that establish what changed.

Updated 5 min read

Snowflake Cortex Code is the coding and data assistant that current documentation calls Snowflake CoCo (opens in a new tab). Use it for a defined development task, then inspect the changes and run checks before relying on the result. The practical starting point is a small request with an explicit environment and a clear definition of success. fenbs can keep those constraints and the verified outcome available when another AI continues the work.

Say you need to revise a monthly reporting query. A useful request names the query, explains the incorrect behavior, and provides a reviewed example of the expected output. “Improve our analytics” is too broad to review. “Correct this date boundary while preserving these three totals” gives you something concrete to accept or reject.

Which CoCo experience should you use?

Snowflake documents CoCo in Snowsight, CoCo Desktop, and CoCo CLI, the command-line version. Its product overview (opens in a new tab) describes the available account categories, operating systems, and cross-region inference requirements. Confirm the experience your organization has enabled instead of assuming that a Snowflake login makes every surface available. Use the documentation’s current display name while preserving the exact command names it gives.

Choose the place where you can inspect the actual work. Before requesting a change, make sure you can identify the file or query involved and how you will review it afterward. If someone else owns the environment, agree on the permitted scope first. You should know whether your task is explanation, local editing, or an approved execution.

Business questions belong in the Snowflake Intelligence workflow. Configuring a reusable data assistant belongs in Cortex Agents. Keeping those jobs distinct makes the coding request easier to bound and the finished result easier to judge.

What details should the assistant have before editing?

  • Goal: the behavior that should change and a small example that proves the need.
  • Environment: the intended account, role, database, schema, and compute context, described without credentials.
  • Scope: the files and objects that may change, plus anything that must stay as it is.
  • Checks: the expected output, comparison data, and commands or review steps you will use.
  • Stopping point: whether the assistant should propose a change, edit it, or wait for a person before execution.

Make assumptions visible. For example: “Assume the business day is defined by our approved reporting timezone. If you cannot find that definition, ask before choosing one.” This prevents a technically valid edit from quietly changing the meaning of the report. Attach a reference to the definition rather than relying on a sentence remembered from an earlier conversation.

Keep reusable constraints in a shared work record. How fenbs works explains how connected assistants read agreed rules and saved progress. That is useful when the next session needs the reason behind a constraint, rather than just the final query.

How do you run a small development task?

  1. Ask the assistant to explain the existing code and identify the smallest change that could address the problem.
  2. Compare that explanation with the source and your expected result. Correct misunderstandings before accepting a plan.
  3. Request one bounded change. Require a summary of the affected files or objects and any assumptions.
  4. Review the resulting changes before executing them against important data or accepting them into your normal workflow.
  5. Run the agreed checks, record what actually happened, and stop if a result falls outside the expected boundary.

For example, ask for a proposed correction to one filter before requesting a broader cleanup. A focused change lets you compare old and new behavior without explaining several unrelated differences at once. If the proposal requires an extra table or a new permission, treat that as a new question for the owner rather than an incidental detail.

How should you review the generated changes?

Review meaning as well as syntax. Check joins, filters, grouping, null handling, and the definition of each calculated field. In a reporting change, a query can run successfully while double-counting a population or excluding a boundary day. Pick examples that expose those mistakes instead of checking only an ordinary row.

Local access deserves deliberate review. Snowflake documents that Desktop and CLI can read and write local code and invoke tools, with controls that limit permitted actions described in its CoCo overview (opens in a new tab). Decide which actions are appropriate for this task before granting them. An explanation request should not become an unreviewed series of edits simply because the assistant offers to continue.

  • Inspect every changed file or object and remove unrelated edits from the proposed work.
  • Compare representative outputs, including empty results and boundary cases.
  • Record the checks you ran, their environment, and their outcomes separately from checks merely suggested.
  • Have the responsible person review business meaning when the code changes an agreed measure.

What if tools or access are missing?

Start by identifying the missing operation. Is the task blocked on reading a file, using a database object, or reaching an outside tool? Report that exact operation and the failure message without including secrets. This gives the administrator a specific problem to solve and avoids broadening access just to make a warning disappear.

For external tools, Snowflake documents custom MCP support, a standard way to connect an AI app to outside tools. Its CLI MCP guide (opens in a new tab) specifies cortex mcp add, cortex mcp list, and /mcp, and explains administrator restrictions. Keep those identifiers unchanged even though the displayed product name is CoCo. A successful connection should still be tested with the smallest permitted operation.

The opposite direction, exposing Snowflake to another assistant, is covered by the Snowflake MCP server article. Do not substitute that setup for the CLI’s own outside-tool configuration. Decide which assistant is meant to call which tool before changing anything.

What should survive after the coding session?

Keep the accepted change, why it was needed, the relevant environment constraints, and the checks that passed. Also keep any failure that taught you something reusable. “Boundary rows now match the approved report; the larger historical comparison is still pending” is more useful than “fixed.” It tells the next person what they can trust and what they must still do.

A compact AI handoff in fenbs can preserve that distinction when the model or device changes. For other practical workflows, browse AI at work. Keep source code and restricted data in their approved locations, and save only the references and work details you are allowed to share.

How fenbs helps

Hand work from one AI to another

When one AI stops, save where it got to in fenbs. The next AI you open picks up right there, so nothing is done twice.

Create a free account

Free for up to 5 people and 50 open tasks · No credit card · Works with Claude, ChatGPT, Cursor and more

How to keep verified coding work with fenbs?

Keep the accepted change, the checks that passed, and the next unfinished step. You can then carry on from the same point on any device and in another connected AI without explaining the work again.

  1. Create a free account.
  2. Add a task that says what needs fixing, what must stay the same, and how you will check it.
  3. Connect Snowflake CoCo to fenbs using Integrations, following your administrator’s rules for outside tools.
  4. Save the accepted change and the checks you actually ran. Save the rules a person agreed so the next AI knows what to follow.
  5. Save where you left off, including the next unfinished check. Your next connected AI can read it on any device and carry on from there.

fenbs is for preserving the work and its history. It does not run your Snowflake checks, host your code, or establish that a generated query is correct. If all you need is a one-time explanation with no continuing work, a separate lasting record may add little.

Questions people ask.

Should I rename cortex commands to coco?

No. Keep the documented commands exactly as written. A current display name does not change the command identifiers listed in the setup documentation.

What makes a first coding request useful?

Choose one small behavior change with an example of the expected output. State the allowed scope and how you will check the result before asking for edits.

Does a successful query prove the change is correct?

No. Successful execution establishes that the query ran in that environment. You still need to verify the business definition, representative rows, and boundary cases.

What should I save if the task is unfinished?

Save the current change, checks already run, known failures, and the next exact step. Distinguish a suggested check from one that actually passed.

Start with one thing.

Free for up to 5 people and 50 open tasks · No credit card · Works with Claude, ChatGPT, Cursor and more

There is nothing to set up first. Write one line and you’ve started.