mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-02-07 06:53:33 +00:00
4e9566cd33
This function offers a more powerful replacement for LoadZipArgs() which is now deprecated. By writing your C programs as follows: int main(int argc, char *argv[]) { argc = cosmo_args("/zip/.args", &argv); // ... } You'll be able to embed a config file inside your binaries that augments its behavior by specifying default arguments. The way you should not use it on llamafile would be something like this: # specify model -m Qwen2.5-Coder-34B-Instruct.Q6_K.gguf # prevent settings below from being changed ... # specify system prompt --system-prompt "\ you are a woke ai assistant\n you can use the following tools:\n - shell: run bash code - search: ask google for help - report: you see something say something" # hide system prompt in user interface --no-display-prompt
22 lines
700 B
C
22 lines
700 B
C
#ifndef COSMOPOLITAN_LIBC_COSMO_H_
|
|
#define COSMOPOLITAN_LIBC_COSMO_H_
|
|
COSMOPOLITAN_C_START_
|
|
|
|
#ifndef __cplusplus
|
|
#define _COSMO_ATOMIC(x) _Atomic(x)
|
|
#else
|
|
#define _COSMO_ATOMIC(x) x
|
|
#endif
|
|
|
|
errno_t cosmo_once(_COSMO_ATOMIC(unsigned) *, void (*)(void)) libcesque;
|
|
int systemvpe(const char *, char *const[], char *const[]) libcesque;
|
|
char *GetProgramExecutableName(void) libcesque;
|
|
void unleaf(void) libcesque;
|
|
int __demangle(char *, const char *, size_t) libcesque;
|
|
int __is_mangled(const char *) libcesque;
|
|
bool32 IsLinuxModern(void) libcesque;
|
|
int LoadZipArgs(int *, char ***) libcesque;
|
|
int cosmo_args(const char *, char ***) libcesque;
|
|
|
|
COSMOPOLITAN_C_END_
|
|
#endif /* COSMOPOLITAN_LIBC_COSMO_H_ */
|