CoCalc Logo Icon
StoreFeaturesDocsShareSupport News Sign UpSign In

CoCalc News
RSS Feed

Recent news about CoCalc. You can also subscribe via RSS Feed RSS Feed or JSON Feed JSON Feed.

The default "Ubuntu 22.04" software environment has just been updated. This includes SageMath 10.1 and makes it the default version of Sage in CoCalc. In your existing Jupyter Notebooks, you have to update the list of kernels (if necessary) and switch to the "Sage 10.1" kernel.

Check out the release tour to learn what's new. E.g. you can now instantiate the 27 dimensional exceptional Jordan algebra:

O = OctonionAlgebra(GF(7), 1, 3, 4) J = JordanAlgebra(O) J
Exceptional Jordan algebra constructed from Octonion algebra over Finite Field of size 7 with parameters (1, 3, 4)

For more general information, visit the SageMath documentation.

In other notes, many tools and utilities have been updated and as a new addition, bun, a fast JavaScript runtime is available as well.

CoCalc now provides GPT-4 on a pay-for-what-you-use basis, in addition to our free GPT-3.5 functionality. As an instructor or student, you might have some questions about how this works!

  1. I don't see a warning about fees when I select "@GPT-4" in the chat window. Does the platform remind users about the fee before the chat is sent?

Anybody can select GPT-4 (in chat and other places), but the first time you use it, there is a big confirmation dialog. This lets you set a specific monthly spending limit (you can set anything you want), which is by default $0. You can always adjust this limit later at under "Self-Imposed Spending Limits", where you can also see the rates.

The dialog also lets you add credit to your account, in case you don't have any, and you can check on the status of that credit at After you explicitly set a limit and add credit, you don't get explicitly asked again every time you use GPT-4. Also, on any day when you use GPT-4, you'll receive an email statement at the end of the day listing how much you spent (and this is easy to disable).

  1. If a student uses GPT-4 once, will CoCalc default to GPT-4 thereafter?

Currently no. The default is always GPT-3.5. That said, several people have been requesting a way to default to GPT-4, to save themselves a click, so we will very likely make that an option sometime in the near future. But it will be possible to configure it either way.

From the "tokens" pricing scheme on OpenAI's site, it is difficult for me to get a good approximation for how much GPT-4 use would cost my students. I recognize that there are too many unknowns for a specific dollar amount, but can you give me any information that would help estimate the cost per semester? A sense of scale ($1 vs. $10 vs. $100 per semester) would be helpful.

Since all use is explicit and manual, e.g., via chat or clicking, in practice it's very difficult to use very much. My guess is that a typical student might use $10 for an entire semester worth of use. A typical interaction is a few cents, so hundreds of interactions cost about $10. You'll quickly get a sense of spend because it's listed in the daily statements mentioned above. For comparison, OpenAI charges $20/month for their GPT-4 chat site, and Microsoft charges $30/month for their CoPilot integration. The model in cocalc where you pay for what you actually use is more affordable.

Note that GPT-3.5 is significantly faster (and completely free to users, though it costs me), and for some things it's pretty good, so people often use it just because the output appears so quickly.

Some other notes:

  • In case you're worried, it's also possible to fully or partly disable ChatGPT for students in your class, e.g., during an exam. That's in course configuration.

  • We're planning to add other Large Language Models, e.g. Claude2 from Anthropic, pretty soon.


The 22.04 line of software environments just received an update. If you encounter a problem, the previous one is accessible under "Ubuntu 22.04 // Previous" in Project Settings → Control → Software Environment. Please report any issues!

There are no major changes, just regular updates to many packages and binaries.


CoCalc now has Cash Voucher Codes. These are single-use codes that you can purchase and make available to somebody else, who can then redeem them at for that amount of credit on their CoCalc account. They can then buy anything in CoCalc using that credit, including upgrade licenses, dedicated VM's and disks, pay-as-you-go project upgrades, student-pay course upgrades, GPT-4 chat evaluation, more vouchers, etc.

To buy a cash voucher code, visit and do "Add Cash Voucher".


then fill out the number and description, and customize the voucher codes:


Then create your voucher codes:


You get this:


Go to and redeem your own code... thus getting your money right back (as credit in your account)!


Note that this has no impact on my balance -- I just made a $5 voucher, which reduced my balance by $5, then I redeemed it, increasing my balance back to exactly where it was:


I hope you find this useful. E.g., if you're teaching a workshop and you want everybody to have an easy way to upgrade their projects for a few hours or use GPT-4 for more sophisticated AI help, you can just issue each participant a $2 voucher...


CoCalc's new purchasing system is now live! Instead of directly buying licenses, you add a credit on your account. You can then use that money in a massively more flexible way to buy licenses, pay-as-you-go upgrades of projects (a new thing), use GPT-4 (new), GPU's (coming soon), and we have many more plans. There's a log of exactly what you purchased, with daily and monthly statements, and as you make purchases your balance goes down.

Payments to add credit now work in your local currency anywhere in the world with a wide variety of local payment methods, instead of just credit cards! You can also buy a subscription without enabling any form of automatic payments -- you just have to manually add credit to cover the subscription periodically.

Another massive improve in our license system is that if you purchase a licenses and find that you need to increase or decrease the RAM or disk space or run limit (number of upgraded projects) or anything else at any time, you can just directly edit the license and your account will be debited or credited accordingly. If you need a license for only a week, or to extend an existing license, you can also just do that at any time using the balance in your account (you're charged the prorated difference).

I think this is much better than what we had before, and it's now fully live as you can see at

and in the screenshots below. These improvements to purchasing are the result of feedback from thousands of users over many years.





Edit a license



Pay as you go project upgrade





The 22.04 line of software environments just got an update!

This update includes the Macaulay2 Jupyter Kernel, which is a powerful tool for symbolic computation. Here is an m2 example notebook.

In addition to the new kernel, many new and updated packages are now available. For example, the Python3 (system-wide) environment now includes:

  • GerryChain - a library for using Markov Chain Monte Carlo methods to study the problem of political redistricting.

  • cirq - a library for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.

  • tequila - a high-level abstraction framework for quantum algorithms.

As usual, you can switch back to the previous 22.04 environment via Project Settings → Project Control → Software Environment: "Ubuntu 22.04 // Previous". Please report any issues you encounter!


We are delighted to announce the release of an update to our flyout side-panels. These represent a modernized and condensed variant of our existing full-size pages. Their aim is to curtail extraneous cognitive load associated with frequent page toggling and navigation, and hence improves the speed and ease of using CoCalc.


The files flyout hosts a compact file explorer that retains the familiar filter, sort, and hidden files functionalities. In addition, it introduces a terminal fully synchronized with your directory navigation. Any directory changes within the terminal are reflected in the interface and vice-versa. This synchronization can be disabled through a toggle button.

When one or more files are selected, file actions become available; these currently open the existing panels. This functionality will be further refined in future iterations. A double-click on a file opens an editor, echoing the usual behavior observed on traditional operating systems.


A new feature is the presence of a button enabling you to load the full history. Similar to files, color-coded borders to the left signify recent usage (in the past few hours, last day, or past week) which assists in quickly identifying the recently modified files, either by yourself or your collaborators.


Our updated interface also encompasses a command button to restart the Sage Worksheet server.

Users (formerly known as "Collaborators")

The revamped interface offers improved control over project access. Future updates will streamline rough edges associated with the invite token and sandbox project components.


This flyout panel provides a succinct overview of your project quotas, their current usage, and limits. Below the quota overview, licenses and upgrades can be configured.


This new settings panel comprises a neatly organized and expandable list of all remaining project settings. This simplified representation makes it easier to focus on just the setting you intend to modify.

Future Developments

While the current flyouts might not fully embody all the features from large configuration pages, we assure you that these will soon be incorporated. Several additional elements, including Git integration, a project-wide chat, an improved homepage, and various minor tweaks are also under consideration. We value and look forward to your feedback.


The SageMath team has released Sage 10.0 and it is now available in the newest Ubuntu 22.04 line of software environments. Users who want to switch to this version should check their Jupyter Kernel menu and update their environment or restart their project if necessary. We recommend updating to this new version to benefit from its latest features and improvements. For more information on Sage 10.0, you can visit the SageMath 10.0 Release Tour page or interactively use the release tour examples on CoCalc. has some exciting new features and updates to improve your online coding experience. For users tired of pesky notification badges, using @ChatGPT in chat will no longer increase the counter. Further enhancing the user interface, file tabs no longer resize upon closing, akin to Chrome's feature, making it simpler to close multiple tabs.

The Save and TimeTravel buttons are improved for seamless file management. Moreover, all buttons will stay visible in non-focused panels – a feature that will benefit LaTeX users greatly. In addition, the left flyout panel is now resizable, featuring a number of other subtle improvements. But what's probably most exciting is the new capability of ChatGPT to stream its output in all situations, whether in side chats or when generating new notebook cells. You can now watch the AI response unfold in real-time as it is being written, significantly enhancing interactivity on the platform.


These updates are set to make your coding experience smoother, more convenient, and enjoyable. Don't forget to refresh your browser!

  • Using @ChatGPT in chat no longer results in a notification badge counter increase

  • Mojo code editing support (syntax highlighting).

  • File tabs no longer resize when closing them, like with chrome, so it's easier to close many tabs.

  • Improved Save and TimeTravel buttons

  • All buttons now stay visible in non-focused panels, which is especially nice with LaTeX: image

  • The left flyout panel is now resizable, and has many other subtle improvements.

  • ChatGPT streams its output in all cases now, both in side chats, and when generating new notebook cells, so you can see the response as it is written. E.g., via Home screen or +New --> "Generate Jupyter Notebook: image


Yesterday and today I finished and made live a new api key implementation, e.g., this is now in account settings:


There is something similar at and ALSO in the settings page for all projects.

These newapi keys have an expire date, a name (which you can change at any time or repeat), the secret key itself doesn't get stored in the database (which is much more secure), and there are project specific api keys that only work for api calls for a specific project, rather than for everything. I left in the old api key functionality, but with messages that people should delete them, so the old keys still remain fully supported.

With the new api keys you can have up to 100 different keys active at once. A key can be set to expire at any time and then it is automatically deleted. You can edit the expire date and the name of the key at any time. It's a much better model. Behind the scenes we don't store the key in the database; instead, we just store a hash of it (the same sha-512 with 1000 rounds and salt as for passwords), so we can confirm somebody knows their api key without having to have the key in the database; this is much more secure. I also really like that I can make a key with a 1-day expire, play around with it, and know it's not just going to be a ticking time bomb.

Read more about the API here: and

The motivation for doing this is that project-specific API keys are needed for some new functionality we're implementing right now that will support connecting external computers to a CoCalc project to provide much more powerful compute. Among other things, this will greatly expand the sort of compute we can offer to include GPU's and other vastly more powerful options, and also to support people plugging in their own compute resources.

paste-0 4698690247357571